文章目录
说明
docker内核版本必须是3.10+以上的版本
linux中无权限时 比如 admin is not in the sudoers file. This incident will be reported.
su
输入密码,即可获取root权限
查看方式
uname -r
安装
1. 卸载老版本的 docker 及其相关依赖
sudo yum remove docker docker-common container-selinux docker-selinux docker-engine
2.更新yum
yum update
3. 安装 yum-utils,它提供了 yum-config-manager,可用来管理yum源
sudo yum install -y yum-utils
添加yum源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5. 更新索引
centos7
sudo yum makecache fast
centos8
sudo yum makecache
6. 安装 docker-ce
安装依赖
curl -sSL https://get.daocloud.io/docker | sh
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
查看版本
yum list docker-ce --showduplicates | sort -r
sudo yum install docker-ce-3:19.03.13
7. 启动 docker
sudo systemctl start docker
8. 验证是否安装成功
sudo docker info
9.安装docker-compose
1.安装epel源
yum install -y epel-release
2.安装docker-compose
从github去下载
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
若是github访问太慢,可以用daocloud下载
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
查看安装版本
docker-compose --version
10.关闭防火墙
Docker 常用命令
开机自启
sudo systemctl enable docker
启动
sudo systemctl start docker
重启
sudo systemctl restart docker
查看状态
sudo systemctl status docker
停止
sudo systemctl stop docker
进入镜像
docker exec -ti <容器名 or 容器id> /bin/bash
删除容器
docker image rm <容器名称/容器ID>
删除镜像
删除一个
docker rm -f <镜像名/镜像ID>
删除多个 其镜像ID或镜像用用空格隔开即可
docker rm -f <镜像名/镜像ID> <镜像名/镜像ID> <镜像名/镜像ID>
删除全部镜像 -a 意思为显示全部, -q 意思为只显示ID
docker rm -f $(docker images -aq)
查询镜像
docker images
运行
docker run <参数> <镜像名>
运行参数
–network=bridge 解决端口设置不起作用
--network=bridge
问题:
docke启动时总是遇见标题中的警告,-p 8889:8888的设置也不起任何作用。
原因:
docker启动时指定–network=host或-net=host,如果还指定了-p或-P,那这个时候就会有此警告,并且通过-p或-P设置的参数将不会起到任何作用,端口号会以主机端口号为主,重复时则递增。
解决:
解决的办法就是使用docker的其他网络模式,例如–network=bridge,这样就可以解决问题
docker的网络模式:
bridge模式: Docker的默认设置
host模式
none模式
container模式: 使用时要指定容器名
overlay模式
重启
docker restart <容器名字>
查看日志
docker logs <容器名字>