51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Docker安装与配置

安装Docker所需要的一些工具包 {#安装Docker所需要的一些工具包}

|-----------|---------------------------------------| | 1 | sudo yum install -y yum-utils |

image-20220731125839540

image-20220731125908437

建立仓库 {#建立仓库}

|---------------|--------------------------------------------------------------------------------------------------------| | 1 2 3 | sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo |

image-20220731130006710

安装Docker引擎 {#安装Docker引擎}

|-----------|----------------------------------------------------------------| | 1 | sudo yum install docker-ce docker-ce-cli containerd.io |

image-20220731130144030

image-20220731130203900

image-20220731130213877

启动Docker {#启动Docker}

|-----------|-------------------------------------| | 1 | sudo systemctl start docker |

测试 Docker 是否安装正常 {#测试-Docker-是否安装正常}

|-----------|-------------------------------------| | 1 | sudo docker run hello-world |

image-20220731130710881

image-20220731130750525

docker安装MySQL {#docker安装MySQL}

安装/启动docker的mysql前,先关闭Linux之前自启动的mysql 否则端口3306可能会报端口被占用的错(如果Linux没安装有MySQL或没有开启过MySQL自启动,可忽略这一步)

报错示意图

image-20220801082725721

解决方式

|-----------|-------------------------------| | 1 | systemctl stop mysqld |

安装mysql镜像 {#安装mysql镜像}

|-----------|--------------------------------| | 1 | sudo docker pull mysql |

image-20220731131601406

安装mysql指定版本(可忽略) {#安装mysql指定版本-可忽略}

|-----------|------------------------------------| | 1 | sudo docker pull mysql:5.7 |

image-20220731131810847

安装结束后,查看本地是否存在

|-----------|-----------------------------| | 1 | sudo docker images |

image-20220731131938325

运行mysql {#运行mysql}

|-----------|---------------------------------------------------------------------------------------| | 1 | docker run --name=mysql -it -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql |

image-20220731181704154

上述命令的含义:
docker run:在docker中启动一个容器实例

--name mysql:容器运行后的名称

-p 3306:3306:容器与主机映射端口为,主机3306,容器3306

-e MYSQL_ROOT_PASSWORD=root:设置当前mysql实例的密码为root

-d: 用于指定要运行的镜像

开启外部访问 {#开启外部访问}

根据容器id进入镜像内部:

|-----------|-------------------------------------------| | 1 | docker exec -it 30aa98ea4e3d bash |

进入mysql:

|-----------|-------------------------| | 1 | mysql -uroot -p |

|-----------|-------------------| | 1 | use mysql |

|-----------|-------------------------------------------------------------------------------| | 1 | ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root'; |

image-20220731182330880

exit退出镜像内部

停止和重启mysql容器:
停止容器:

|-----------|------------------------------------------------| | 1 | docker stop 30aa98ea4e3d #(镜像运行的容器id号) |

重启:

查看所有容器,包括停止的:

|-----------|----------------------| | 1 | docker ps -a |

重启:

|-----------|-------------------------------------| | 1 | docker restart 30aa98ea4e3d |

也可以移出这个容器:

|-----------|--------------------------------| | 1 | docker rm 30aa98ea4e3d |

使用Navicat远程访问mysql

image-20220731181812981

Docker常用命令 {#Docker常用命令}

新建容器

|-----------|----------------------------------------------| | 1 | docker run -d --name 自定义容器名 镜像ID或镜像名 |

展示当前运行的容器

|-----------|-------------------| | 1 | docker ps |

展示所有容器

|-----------|----------------------| | 1 | docker ps -a |

展示所有本地镜像

|-----------|-----------------------| | 1 | docker images |

运行容器

|-----------|-------------------------------| | 1 | docker start 容器名或容器ID |

停止运行容器

|-----------|------------------------------| | 1 | docker stop 容器名或容器ID |

删除容器

|-----------|-------------------------------| | 1 | docker rm -f 容器名或容器ID |

进入容器内容bash

|-------------|-----------------------------------------------------| | 1 2 | docker exec -it 容器名或容器ID bash # 退出容器命令:exit |

关闭docker服务

|-----------|-------------------------------| | 1 | systemctl stop docker |

赞(2)
未经允许不得转载:工具盒子 » Docker安装与配置