docker安装
1、安装步骤
官网安装地址:https://docs.docker.com/engine/install/centos/
安装命令
#卸载老版本(\是链接符,将本段文字直接运行即可)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#安装yum-utils
yum install -y yum-utils
#配置云镜像
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装最新docker docker-ce 社区版 docker-ee 企业版
yum install docker-ce docker-ce-cli containerd.io
#启动docker
systemctl start docker
#查看版本
docker version
#通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community
docker run hello-world
配置加速器
#配置镜像加速器
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://kwr9zrju.mirror.aliyuncs.com"]
}
EOF
#重新加载
systemctl daemon-reload
#重启docker
systemctl restart docker
通过其完整的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如:docker-ce-20.10.8。
#进行安装
sudo yum install docker-ce-20.10.8 docker-ce-cli-20.10.8 containerd.io
2、卸载docker
#卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
#删除默认资源目录
rm -rf /var/lib/docker
docker常用命令
1、镜像命令
#docker images 查看所有本地主机上的镜像
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 7 months ago 13.3kB
# 解释
REPOSITORY # 镜像的仓库
TAG # 镜像的标签
IMAGE ID # 镜像的ID
CREATED # 镜像的创建时间
SIZE # 镜像的大小
# 可选项
--all , -a # 列出所有镜像
--quiet , -q # 只显示镜像的id
#下载镜像(分层下载)
[root@localhost ~]# docker pull mysql
#搜索命令
[root@localhost ~]# docker search mysql
# 删除镜像
[root@localhost ~]# docker rmi -f IMAGE ID
#删除所有镜像(查出所有的镜像id,递归删除)
[root@localhost ~]# docker rmi -f$(docker images -aq)
2、容器命令
#先下载一个镜像
[root@localhost ~]# docker pull centos
#新建容器并启动
docker run [可选参数] image
参数说明
--name="name" 容器名称,启动之后 tomcat01 tomcat02 用来区分容器
-d 后台交互方式运行
-it 使用交互方式运行,进入容器查看内容
-P 制定容器端口 -P 8080:8080 映射容器端口和主机端口的关系
-p ip:主机端口:容器端口
-p 主机端口:容器端口
-p 容器端口
-p 随机指定端口
#牛刀小试 启动 并进入容器
[root@localhost ~]# docker run -it centos /bin/bash
#退出容器并停止
[root@localhost ~]# exit
#退出容器不停止
Ctrl + P + Q
#查看当前正在运行的容器
[root@localhost ~]# docker ps
#查看曾经运行过的容器
[root@localhost ~]# docker ps -a
#删除容器(运行中的容器不支持删除,删除镜像是: docker rmi 镜像id)
docker rm 容器id
#删除所有容器(可以直接包里删除运行中的容器)
[root@localhost ~]# docker rm -f $(docker ps -aq)
#删除所有容器(可以直接包里删除运行中的容器)
[root@localhost ~]# docker ps -a -q|xargs docker rm
#启动和停止容器的操作
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前运行的容器
#进入容器
#方式一 (docker exec -it 容器id bashShell)
[root@ldk /]# docker exec -it b6f62403008c /bin/bash
docker和MongoDB
启动MongoDB
#查看docker容器状态
[root@localhost ~]# systemctl status docker
#启动docker容器
[root@localhost ~]# systemctl start docker
#停止docker容器
[root@localhost ~]# systemctl stop docker
#启动MongoDB
[root@localhost ~]# docker run -d --restart=always -p 27017:27017 --name mymongo -v /data/db:/data/db -d mongo
#查看启动过的容器
[root@localhost ~]# docker ps -a
#停止容器
[root@localhost ~]# docker stop 启动镜像的id
#停止容器
[root@localhost ~]# docker start 启动镜像的id
#进入MongoDB容器
[root@localhost ~]# docker exec -it mymongo /bin/bash
#进入数据库
[root@localhost ~]# mongo