1. docker安装
安装下载 Docker 的命令
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加阿里云的软件源
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新yum缓存
sudo yum makecache fast
安装docker
sudo yum -y install docker-ce
docker开启自启
systemctl enable docker
2. docker基本命令
docker search 镜像名称 //搜索镜像
docker pull 镜像名称:版本号 //拉取对应版本的镜像
docker pull 镜像名称 //默认拉取最新的镜像
docker images //查看本地已下载的镜像
docker ps //查看正在运行的容器
docker ps -a //查看所有的容器(包括run、stop、exited状态的)
docker container ls //查看正在运行的容器
docker rm 容器ID //只能删除没有在运行的容器
docker rm -f 容器ID //可以删除正在运行的容器
docker run -p 本地主机端口号:容器服务端口号 --name 容器名字 [-e 配置信息修改] -d 镜像名字
docker start 容器ID //启动容器
docker stop 容器ID //终止容器
docker rmi 镜像名称orID //删除镜像
docker rmi 镜像名称orI --force //强制删除镜像
3. docker补充操作
3.1 docker文件拷贝
文件拷贝到容器
docker cp 需要拷贝的文件或目录容器名称:容器目录
将文件从容器内拷贝出来
docker cp 容器名称:容器目录需要拷贝的文件或目录
docker cp /1.txt redis:/ #把linux中的/1.txt文件,拷贝到redis容器中的 / 根目录 docker
cp redis:/2.txt / #把redis容器中的 /2.txt ,拷贝到 linux的 / 根目录
3.2 目录挂载
我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。
创建容器 添加 -v 参数 后边为 宿主机目录 : 容器目录
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7
如果你共享的是多级的目录,可能会出现权限不足的提示:permission denied
这是因为CentOS7 中的安全模块 selinux 把权限禁掉了,我们需要添加参数 --privileged=true 来解决挂载的目录没有权限的问题
3.3 查看容器IP地址
我们可以通过以下命令查看容器运行的各种数据
docker inspect mycentos2
也可以直接执行下面的命令直接输出 IP 地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' mycentos2
3.4 删除容器
删除指定的容器: docker rm 容器名 / 容器 ID
注意,只能删除停止的容器
删除所有容器:
docker rm docker ps -a -q
3.5 登录容器
docker attach CONTAINER ID
容器ID进入
docker attach NAMES
容器别名进入
docker exec -it NAMES /bin/bash
exec容器别名进入
docker exec -it CONTAINER ID /bin/bash
exec容器ID进入