docker命令、容器挂载、镜像制作、docker compose、docker私有仓库
服务相关命令
-- 开启docker systemctl start docker -- 关闭docker systemctl stop docker -- 查看docker状态 systemctl status docker -- 重启 systemctl restart docker -- 开机启动docker systemctl enable docker
镜像相关命令
-- 查看镜像 docker images -- 搜索镜像 以redis为例 docker search redis -- 特定版本 docker search redis:5.0 -- 拉取镜像 docker pull redis -- 删除镜像 docker rmi redis
容器相关命令
-- 查看容器 -- 查看正在运行的容器 docker ps -- 查看所有容器 docker ps -a -- 创建容器 -- -i 保持容器一直运行,一般容器没有客户端连接就会关闭 -- -t 给容器分配一个终端 -- -d 后台运行容器,需要手动进入,而且exit不会关闭容器,通过 ‘’ 进入容器 -- --name=c1,给容器起一个名为c1的名字 docker run -i -t --name=c1 镜像名称[:版本] [进入容器的初始化指令] -- 进入容器 docker exec -it 容器名称 -- 退出容器 exit
容器的数据卷
- 配置数据卷
// 挂载多个时,写多个-v docker run -it --name=c1 -v /root/data:/root/data_redis redis
- 数据卷容器
通过一个中间容器进行挂载
其中/volumes为容器的目录,如果挂载时不写左边宿主机的目录,则系统会自动分配一个
部署示例
镜像制作
- 容器转为镜像
- dockerfile制作自己的镜像
- 示例
from 基于的环境 maintainer 作者 [run linux中需要安装的程序的命令] // 如 apt install [-y] pytorch // -y表示安装过程中弹出的选项的选择 workdir /usr // 默认工作目录 [add 打包的程序] cmd 通过命令行执行打包程序的命令
docker build -f dockerfile的路径 -t 新镜像的名称:自定义版本号 . //docker build -f dockerfile ./springboot_dockerfile -t app .
docker compose
# Compose目前已经完全支持Linux、Mac OS和Windows,在我们安装Compose之前,需要先安装Docker。下面我 们以编译好的二进制包方式安装在Linux系统中。 curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose # 设置文件可执行权限 chmod +x /usr/local/bin/docker-compose # 查看版本信息 docker-compose -version
# 二进制包方式安装的,删除二进制文件即可 rm /usr/local/bin/docker-compose
-
- 创建docker-compose目录
mkdir ~/docker-compose
cd ~/docker-compose
-
- 编写 docker-compose.yml 文件
version: '3' services: nginx: image: nginx ports: - 80:80 links: - app volumes: - ./nginx/conf.d:/etc/nginx/conf.d app: image: app expose: - "8080"
-
- 创建./nginx/conf.d目录
创建./nginx/conf.d目录
-
- 在./nginx/conf.d目录下 编写itheima.conf文件
server { listen 80; access_log off; location / { proxy_pass http://app:8080; } }
-
- 在~/docker-compose 目录下 使用docker-compose 启动容器
在~/docker-compose 目录下 使用docker-compose 启动容器
-
- 测试访问
http://192.168.149.135/hello
docker私有仓库
# 1、拉取私有仓库镜像 docker pull registry # 2、启动私有仓库容器 docker run -id --name=registry -p 5000:5000 registry # 3、打开浏览器 输入地址http://私有仓库服务器ip:5000/v2/_catalog,看到{"repositories":[]} 表示私有仓库 搭建成功 # 4、修改daemon.json vim /etc/docker/daemon.json # 在上述文件中添加一个key,保存退出。此步用于让 docker 信任私有仓库地址;注意将私有仓库服务器ip修改为自己私有仓库服务器真实ip {"insecure-registries":["私有仓库服务器ip:5000"]} # 5、重启docker 服务 systemctl restart docker docker start registry
# 1、标记镜像为私有仓库的镜像 docker tag centos:7 私有仓库服务器IP:5000/centos:7 # 2、上传标记的镜像 docker push 私有仓库服务器IP:5000/centos:7
#拉取镜像 docker pull 私有仓库服务器ip:5000/centos:7
自己选择的路,跪着也要走完。朋友们,虽然这个世界日益浮躁起来,只要能够为了当时纯粹的梦想和感动坚持努力下去,不管其它人怎么样,我们也能够保持自己的本色走下去。