在Linux系统中使用yum安装Docker并运行MySQL镜像,以及查看日志和开启外网连接的整个过程可以分为以下几个步骤:
-
安装Docker:
- 首先,需要更新现有的yum包索引:
sudo yum update -y
- 安装Docker的仓库:
sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- 安装Docker Engine:
sudo yum install docker-ce docker-ce-cli containerd.io
- 启动Docker服务:
sudo systemctl start docker
- 验证Docker是否正确安装:
sudo docker version
- 首先,需要更新现有的yum包索引:
-
运行MySQL镜像:
- 拉取MySQL的Docker镜像(以最新版为例):
sudo docker pull mysql:latest
- 运行MySQL容器,设置环境变量和端口映射:
这里sudo docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 mysql:latest
some-mysql
是容器的名称,my-secret-pw
是root用户的密码,-p 3306:3306
表示将容器的3306端口映射到宿主机的3306端口。
- 拉取MySQL的Docker镜像(以最新版为例):
-
查看MySQL容器日志:
- 使用以下命令查看MySQL容器的日志:
sudo docker logs some-mysql
- 使用以下命令查看MySQL容器的日志:
-
开启外网连接:
- 确保MySQL容器的3306端口已经映射到宿主机的3306端口,如上一步所示。
- 在MySQL容器内部,允许外网访问MySQL服务:
-- 进入容器的bash shell sudo docker exec -it some-mysql bash -- 进入MySQL命令行 mysql -uroot -p -- 替换'my-secret-pw'为你设置的root密码 -- 允许外网访问 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my-secret-pw' WITH GRANT OPTION; FLUSH PRIVILEGES;
- 退出容器:
exit
-
验证外网连接:
- 从外网的任何机器上,使用MySQL客户端连接到你的MySQL容器:
mysql -h 你的服务器IP -uroot -pmy-secret-pw
- 从外网的任何机器上,使用MySQL客户端连接到你的MySQL容器:
-
注意事项:
- 确保宿主机的防火墙允许3306端口的流量。
- 根据你的网络环境,可能需要在云服务提供商的控制台中设置安全组规则,以允许3306端口的入站流量。
以上步骤提供了从安装Docker到运行MySQL镜像,并开启外网连接的完整流程。请根据你的具体环境进行适当的调整。