操作系统 windows11
虚拟机VMware Workstation Pro
Linux版本 CentOS Linux release 7.9.2009 (Core)
SSH连接工具 MobaXterm_Portable_v24.0
1.docker安装
1.1卸载之前的版本
yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-selinux \docker-engine-selinux \docker-engine \docker-ce
1.2安装必要的一些系统工具
在设置仓库之前,需先安裝所需的软件包。yum-utils提供了yum-config-manager,并且device mapper存储驱动程序需要device-mapper-persistent-data和lvm2。
yum install -y yum-utils device-mapper-persistent-data lvm2
1.3设置源仓库
使用官方源地址:
yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo
通常,官方的源地址比较慢,可将上述的源地址替换为国内比较快的地址:
使用阿里云
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
1.4 安装dockewr
(1)执行缓存。包信息下载到本地缓存
yum makecache fast
(2)执行安装社区版
yum install docker-ce
1.5启动docker
systemctl start docker
1.6设置开机启动
systemctl enable docker
1.7关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
2使用docker安装一些应用
2.1安装nginx
docker run --name mynginx -p 80:80 -d nginx
2.2安装mysql5.7和8.0
docker run -p 3306:3306 --name mysql57 -e MYSQL_ROOT_PASSWORD=123 -d mysql:5.7
docker run -p 3307:3306 --name mysql80 -e MYSQL_ROOT_PASSWORD=123 -d mysql:8.0
3.docker命令
(1)启动docker
systemctl start docker
(2)设置开机启动docker
systemctl enable docker
(3)重启docker
systemctl restart docker
(4)查看docker状态
systemctl status docker
(5)查看docker版本
docker --version
4.docker组成
Docker Registry:仓库,用于存放docker镜像,分为公共和私有两种。
Docker Image:镜像,是只读层,包含了容器运行时的文件系统。
Docker Container:容器,是镜像的运行实例,在用户空间为应用提供隔离的运行环境。
Docker Daemon:运行于主机上的长时间服务,处理Docker命令和管理Docker对象。守护进程。
Docker Compose:用于定义和运行多容器Docker应用的工具。
Docker Machine:用于在虚拟机上安装 Docker的工具,支持多种平台。
Docker Client:客户端,用于与Docker Daemon进行交互。
5.基本镜像命令
(1)搜索镜像
docker search mysql
docker search mysql:5.7
(2)拉取镜像
docker pull mysql
docker pull mysql:5.7
(3)查看镜像
docker images
(4)删除镜像
docker rmi 镜像ID
6.基本容器命令
(1)创建容器
docker create --name 容器名 镜像名:版本号 (镜像名:tag)
(2)创建容器并运行
docker run --name 容器名 -d -p 81:80 镜像名:版本号
-d:后台运行。看不到容器输出的信息,但容器仍在运行
-p:端口映射 宿主机端口号:容器端口号
(3)进入容器内部进行交互操作
docker exec -it nginx名(容器ID) bash
nginx -v
参数:
-i:以交互模式运行容器
-t:为容器重新分配一个伪输入终端
(4)创建容器并运行,同时进入容器内部进行交互操作
docker run --name 容器名 -it -p 81:80 镜像名:版本号
nginx -v
(5)退出容器
exit
(6)显示正在运行的容器
docker ps
(7)显示所有容器
docker ps -a
(8)停止运行的容器
docker stop 容器ID/容器名称
(9)启动已有容器
docker start 容器ID/容器名称
(10)删除容器
docker rm 容器ID/容器名称