Centos 7 安装 Docker 与 Docker Compose

参考

环境

软件/系统 版本 说明
Centos 7.6 64位
yum-utils 1.1.31 软件包
device-mapper-persistent-data 26.1.4 软件包
lvm2 7:2.02.187 软件包
docker-ce 3:26.1.4 软件包(2024/06 国内相关 Docker 镜像站暂停提供服务)
docker-ce-cli 1:26.1.4 软件包
containerd.io 1.6.33 软件包
docker-compose-plugin 2.27.1 软件包

注意

docker: Error response from daemon: No command specified

运行 export 导出,import 导入的镜像必须指定运行 command,否则启动会报错:Error response from daemon: No command specified。
具体的command需要在导出容器的时候通过 docker ps 查看到:

# 这个命令如果容器信息过长会省略
# docker ps  --no-trunc
# 这样可以查看完整的信息
docker ps --no-trunc -a
# 导入镜像时带上命令(其中命令不需要带 docker-entrypoint.sh 字符串,docker 会自动调用),即可正常运行。
docker run -itd --name 自定义容器名 导入的容器名:容器版本 命令

# 或 linux docker下执行运行容器 docker run -itd --name 自定义容器名 导入的容器名:容器版本 /bin/bash(windows 下 git 执行失败)

image

查询到Command之后,运行容器:

正文

  1. 清理旧版本
    # 查看安装过的docker
    yum list installed | grep docker
    # 旧版名称是docker , 最新社区版 docker-engine, 目前已改名为docker-ce 
    yum remove docker  docker-common docker-selinux docker-engine
    
  2. 安装需要的软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖。
    yum install -y yum-utils device-mapper-persistent-data lvm2
    
  3. 设置一个yum源
    # (阿里仓库)
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    

Docker 安装

  1. 安装docker
    # 查看版本
    # yum list docker-ce --showduplicates | sort -r
    # 安装
    yum install docker-ce docker-ce-cli containerd.io
    
  2. 启动并加入开机启动
    systemctl start docker     # 启动  
    systemctl restart docker   # 重启
    systemctl enable docker    # 开机启动
    
  3. 验证
    # --rm 在命令运行完毕后,自动删除容器。
    docker run --rm hello-world 
    

Docker Compose 安装

  1. 安装 docker compose
    yum install -y  docker-compose-plugin
    

常用命令

Docker 常用命令

# 查看所有容器,包括未运行
docker ps -a
# 通过镜像简单创建并启动容器(还有很多命令参数,可以搜索学习一下)
docker run --name 自定义容器名称 镜像名称:镜像版本 
# 启动已停止的容器
docker start 容器id或name
# 停止容器
docker stop 容器id或name
# 重启容器
docker restart 容器id或name
# 强制停止容器
docker kill 容器id
# 查看容器的所有信息
docker inspect 容器id
# 查看容器日志
docker container logs 容器id
# 查看容器里的进程
docker top 容器id
# 删除已停止的容器
docker rm 容器id或name
# 删除正在运行的容器
docker rm -f 容器id
# 删除镜像  24/08/10
docker rmi 镜像名或镜像id
# 进入容器
docker exec -it 容器id /bin/bash
# 进入容器后退出容器(容器内执行)
exit

Docker Compose 常用命令

linux 下尝试执行格式为:docker compose
windows 下尝试执行格式为:docker-compose

# 下载镜像、生成容器与启动容器。
docker-compose -f docker-compose.yml up
# 下载镜像、生成容器与后台启动容器(守护模式)。
docker-compose up -d
# 涉及到 Dockerfile 的修改 24/06/22
docker-compose up  --build -d
# 停止容器
docker-compose down
# 停止并删除容器、网络、卷以及构建的镜像
docker-compose down --volumes --rmi all
posted @ 2024-06-11 21:18  夏秋初  阅读(576)  评论(0编辑  收藏  举报