一、相关资料
Docker是为开发人员、系统管理员提供构建、运行、共享应用程序的平台。使用容器来部署应用程序称之为容器化。容器不是新的,但用于轻松部署应用程序的容器却是新的。
Docker的优势:
- 有助于微服务的落地和部署;
- 可以充分利用物理机的资源,同时能够整合服务器资源;
- 有利于敏捷化开发,CI(CONTINUOUS INTEGRATION——持续集成)/CD(CONTINUOUS DEPLOYMENT——持续部署),提高测试效率、部署效率
- 使得应用的迁移更加方便
Docker官网文档:https://docs.docker.com/engine/install/centos/
Docker Hub镜像网址:https://hub.docker.com/
本文是建立在上一篇使用VirtualBox/vagran搭建centos服务的基础之上的,已经有服务器的小伙伴可以自动忽略,还未有自己服务器的小伙伴需要先去看一下。本文中所有的命令都是在xshell中执行的。
二、搭建Docker
1、首先第一步我们要先卸载老版本的Docker,
执行以下命令:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

2、接下来我们需要安装相关的依赖
执行以下下命令安装:
sudo yum install -y yum-utils
3、配置Docker的默认仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
如果小伙伴想让Docker的镜像下载速度快一点的话,可以设置一下阿里云的加速器,我们访问:https://cr.console.aliyun.com/cn-hangzhou/instances/repositories,复制以下命令,在xshell中粘贴执行:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://ys9yd7xp.mirror.aliyuncs.com"]
}
EOF

坦白来讲,就是在/etc/docker/daemon.json 中加上了阿里云所对应的mirror,我们可以通过以下命令来查看
cat /etc/docker/daemon.json

4、安装Docker
执行以下命令,中间有选择是否按照,输入‘y’回车即可,然后静待Docker安装完成即可。
sudo yum install docker-ce docker-ce-cli containerd.io

三、Docker的简单使用
1、启动docker
sudo systemctl start docker
2、设置docker开机启动
sudo systemctl enable docker
3、查看docker版本信息
docker version
4、查看docker镜像
docker images
有时候dokcer拉取镜像失败会产生坏的镜像,如下图,我们需要执行以下命令将其删除:

docker rmi $(docker images -f "dangling=true" -q)
5、拉取hello-world镜像
docker pull hello-world
如果不指定版本的话,默认下载最新版的镜像,我们也可以通过镜像的tag来下载指定版本的镜像,如下:
docker pull tomcat:9.0-jdk8-corretto
6、Docker容器
(1)、创建容器并给容器命名
docker run --name helloDocker hello-world

如果docker run hello-world,hello-world镜像不存在,则会先拉取远端的hello-world镜像,然后再创建container。
(2)、创建容器,设置容器在后台运行,并指定容器的虚拟机端口和宿主机的端口
-d:设置后台运行;-p 9090:8080 :设置tomcat容器的在虚拟机中的端口为8080,在宿主机的端口为9090; :9.0指定tomcat9.0的镜像。我们在物理机访问http://centos的ip:9090,就能看到tomcat页面,如果访问报
404,看此解决方案。
docker run -d --name qz-tomcat -p 9090:8080 tomcat:9.0
(3)、进入创建的容器
通过运行一个/bin/bash命令,进入qz-tomcat容器里面,如下:
docker exec -it qz-tomcat /bin/bash

(4)、退出容器
exit

(5)、删除容器
删除全部容器:
docker rm -f $(docker ps -aq)

删除指定容器:
docker rm 容器id
(6) 、设置容器随着docker启动而启动
docker run -d --restart=always --name qz-mysql -p 3301:3306 -e MYSQL_ROOT_PASSWORD=123456 --privileged mysql
--restart具体参数值详细信息:
- no - 容器退出时,不重启容器;
- on-failure - 只有在非0状态退出时才重新启动容器;
- always - 始终重启容器;
docker update --restart=always 容器id
(7)、关闭容器
docker stop 容器名称或者容器ID
(8)、启动容器/重启容器
docker start 容器名称或者容器ID
docker restart 容器ID
(9)、查看容器的状态
docker stats 容器ID

(10)、查看容器的日志
docker logs -f -t --tail 20 容器名称
7、查看当前docker中运行的容器contaniner
docker ps
8、查看所有container容器,包含运行、退出的
docker ps -a

9、搜索docker 镜像
例如想知道mysql有哪些docker镜像,可以执行以下代码:
docker serarch mysql
10、查看docker命令
docker -help
11、删除docker镜像
docker rmi -f hello-world
本文介绍Docker的基本概念及其优势,详细讲解如何在CentOS系统上安装配置Docker,并演示常见操作命令,如启动、停止容器等。


388

被折叠的 条评论
为什么被折叠?



