【笔记】Docker

linux 7.0以上版本

一、docker

CentOS7升级最新版本Docker

首先升级一下系统包 (可以跳过)

$ sudo yum update

卸载旧版本的 Docker

$ sudo yum erase docker docker-common docker-client docker-compose

添加 Docker 的 yum 源

创建一个 /etc/yum.repos.d/docker.repo 文件,内容如下:

[dockerrepo]

name=Docker Repository

baseurl=https://yum.dockerproject.org/repo/main/centos/7/

enabled=1

gpgcheck=1

gpgkey=https://yum.dockerproject.org/gpg

安装新版本 Docker

$ sudo yum install -y docker-engine

安装完后设置为系统开机自动启动服务

$ sudo systemctl enable docker.service

启动服务

$ sudo systemctl start docker

测试一下

docker info

# docker -v

Docker version 17.05.0-ce, build 89658be

 

# /bin/systemctl start  docker.service

 

二、docker-compose

# sudo curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
 

问题1:

curl: (35) Peer reports incompatible or unsupported protocol version.

处理1:

#  yum update -y nss curl libcurl

问题2:

curl: (35) SSL connect error

处理2:

# yum -y update nss

问题3 在非root账户下面执行
$ docker-compose up
ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?

If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
解决3
#  ll /var/run/docker.sock
srw-rw---- 1 root docker 0 Feb 13 16:38 /var/run/docker.sock
# chmod 666 /var/run/docker.sock

#  chmod +x /usr/local/bin/docker-compose

# docker-compose -v

docker-compose version 1.21.1, build 5a3f1a3

### Docker镜像使用教程 #### 创建Docker镜像 创建Docker镜像最常见的方式是编写`Dockerfile`并基于此文件构建镜像。Dockerfile是一系列指令的集合,用于定义如何组装一个镜像[^1]。 ```dockerfile # 使用官方Python镜像作为基础镜像 FROM python:3.8-slim-buster # 设置工作目录 WORKDIR /app # 将当前目录下的所有文件复制到容器内的/app路径下 COPY . . # 安装依赖项 RUN pip install --no-cache-dir -r requirements.txt # 指定容器启动时默认执行的命令 CMD ["python", "my_app.py"] ``` 上述例子展示了怎样利用Dockerfile来准备应用程序所需的全部组件,从而形成一个新的自包含式环境。每一条语句代表了一个动作,比如安装软件包或是设置环境变量等[^3]。 #### 下载与上传Docker镜像 当需要特定版本的基础操作系统或者其他预设好的开发环境时,可以从公共或私有的注册中心拉取已存在的镜像。例如: ```bash docker pull ubuntu:16.04 ``` 这条命令会从[Docker Hub](https://hub.docker.com/)下载名为ubuntu、标签为16.04的官方Linux发行版镜像[^2]。 同样地,也可以将自己的定制化镜像推送到云端存储库以便团队成员之间共享或者部署至生产环境中去。 #### 删除不再使用的Docker镜像 为了保持系统的整洁以及释放磁盘空间,定期清理无用的本地镜像是很有必要的。可以借助于以下命令完成这项任务: ```bash docker rmi <image_id> ``` 如果想要一次性移除所有悬空(即未被任何容器引用)的镜像,则应采用更加强力的方法: ```bash docker image prune -a ``` 这将询问确认后再继续操作;加上`-f`选项则可以直接强制执行而不弹出提示框[^4]。 #### 注意事项 - **安全性考量**:始终确保所使用的镜像来自可信源,并尽可能选择经过验证过的官方发布版本。 - **性能优化**:合理规划多阶段构建流程以减少最终产物大小,提高分发效率的同时也能加快启动速度。 - **持续集成/交付(CI/CD)**:考虑将自动化的测试和部署机制融入日常工作中,使得每次更改都能迅速反映在线上服务里。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

掘金者说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值