Docker学习(一)安装
首先卸载旧版本
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
使用 Docker 仓库进行安装
安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
$ sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
安装 Docker Engine-Community
安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:
$ sudo yum install docker-ce docker-ce-cli containerd.io
启动 Docker。
$ sudo systemctl start docker
Docke 镜像加速
参考:https://blog.csdn.net/qq_37495786/article/details/83246421
Ubuntu16.04+、Debian8+、CentOS7对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):
vim /etc/docker/daemon.json
添加自己在阿里云获取到的加速地址
{ "registry-mirrors": ["https://pss50q85.mirror.aliyuncs.com"] }
之后重新启动服务:
$ sudo systemctl daemon-reload $ sudo systemctl restart docker
检查加速器是否生效
检查加速器是否生效配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效,在命令行执行 docker info,如果从结果中看到了如下内容,说明配置成功
$ docker info Registry Mirrors: https://pss50q85.mirror.aliyuncs.com
docker命令
# 搜索跟centos相关的镜像 docker search centos #拉取镜像 docker pull centos #启动容器 docker run -dit -name 容器名 镜像名 /bin/bash #启动容器,容器退出后删除该容器 docker run -dit --rm -name 容器名 镜像名 /bin/bash #端口映射 #本地端口:容器端口 docker run -dit -p 8080:8080 --name 容器名 镜像名 /bin/bash #进入容器 docker exec -it 容器名 /bin/bash #查看容器日志 docker logs -f 容器名 #查看容器的IP地址 docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名 #查看正在运行的容器 docker ps docker ps -a #查看所有容器,不管有没有启动 docker ps -l #查看历史运行的容器 #推送镜像 # username为你docker账号的用户名 docker push username/ubuntu:17.10 #查看容器信息 docker inspect 容器名 #删除已退出的容器 docker rm `docker ps -a|grep Exited|awk '{print $1}'` #删除全部容器 docker stop $(docker ps -q) & docker rm $(docker ps -aq) #删除镜像 docker rmi 镜像id #创建一个docker网络 docker network create -d bridge my-net #运行一个容器并连接到新建的网络 docker run -it --name 容器名 --network my-net 镜像名 /bin/bash **挂载本地目录** # 将当前目录,挂载到容器的/app/demo目录中 docker run -it -d --name 容器名 -v ./:/app/demo 镜像名 /bin/bash #保存镜像 docker save alpine | gzip > alpine-latest.tar.gz #加载保存的镜像 docker load -i alpine-latest.tar.gz #导出容器 docker export 7691a814370e > ubuntu.tar 从容器快照中导入为镜像 #cat ubuntu.tar | docker import - test/ubuntu:v1.0 清理所有处于终止状态的容器 #docker prune