如何在自己的云服务器上部署mysql
如何在自己的云服务器上部署mysql
前言:
我是用的是阿里云服务器,我的服务器上安装的系统是Ubuntu 20.04,一下内容都是居于此撰写。
前期准备工作
远程链接自己的云服务器,这里给大家推荐一个好用的软件:FinalShell
**下载地址:**https://www.hostbuf.com/t/988.html
FinalShell 是一款集远程终端管理、文件传输、远程桌面、网络诊断等功能于一体的跨平台运维工具。它被广泛应用于云服务器管理和开发运维场景,特别是在需要频繁连接和操作 Linux 服务器时,FinalShell 提供了简单高效的工具支持。
FinalShell 的典型应用场景
1. 云服务器管理
- 运维人员通过 FinalShell 管理云服务器(如阿里云、腾讯云、AWS 等),实现远程连接、部署应用、查看日志、调试问题等操作。
2. 文件部署
- 开发人员通过 FinalShell 将本地开发的文件、脚本上传到远程服务器,或将服务器上的日志文件下载到本地。
3. 远程运维和监控
- 运维工程师通过 FinalShell 的性能监控功能,实时查看服务器资源使用情况,并快速排查问题。
4. 网络调试
- 网络工程师使用 FinalShell 测试服务器与其他设备之间的网络连通性,排查网络问题。
5. 多服务器管理
- 当需要同时管理多个服务器时,可以使用 FinalShell 的多窗口和会话管理功能,高效地切换和操作。
1、安装Docker
你可以在你的云服务其上通过以下的命令来安装Docker:
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list'
sudo apt update
sudo apt install docker-ce
[外链图片转存中…(img-5otpyLvR-1734706751749)]
很好,现在依赖软件已经安装完成,接下来可以继续安装 Docker:
1. 添加 Docker 的 GPG 密钥
运行以下命令,确保可以验证 Docker 软件包的签名:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
2. 添加 Docker 软件包源
添加 Docker 官方的 APT 软件包源:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
3. 更新 APT 软件包索引
更新软件包索引,以使系统识别新的 Docker 源:
sudo apt update
4. 安装 Docker CE
运行以下命令安装 Docker 社区版(CE):
sudo apt install docker-ce docker-ce-cli containerd.io
5. 验证 Docker 是否安装成功
完成安装后,可以通过以下命令检查 Docker 是否已正确安装:
docker --version
如果显示 Docker 的版本号,说明 Docker 已安装成功。
6. 测试 Docker 是否正常运行
运行以下命令拉取并运行一个测试容器,以确保 Docker 正常工作:
sudo docker run hello-world
正确情况下,你会在页面看到如下内容:
但是如果你没有给安装hello world 镜像的话,是无法输出的。
如果你在第五步检验docker没有安装成功:可能是由于直接连接 Docker 官方源失败,可以使用国内的 Docker 镜像源(比如阿里云源)进行安装:
1、安装 Docker 的国内镜像版本
运行以下命令安装 Docker 的 docker.io
包(国内源):
sudo apt update
sudo apt install docker.io -y
这个命令会直接从 Ubuntu 官方仓库或镜像安装 docker.io
包。安装完成后,检查 Docker 是否可用:
docker --version
如果返回 Docker 的版本号,则说明安装成功。
2、启动 Docker 服务
安装完成后,需要启动并设置 Docker 服务开机自启:
sudo systemctl start docker
sudo systemctl enable docker
然后测试是否能运行:
sudo docker run hello-world
7、安装hello world 镜像
1. 手动拉取 hello-world
镜像
运行以下命令来手动下载测试镜像:
sudo docker pull hello-world
2. 再次运行测试容器
拉取成功后,再次运行以下命令测试 Docker 是否工作正常:
sudo docker run hello-world
如果一切正常,你应该会看到类似以下的输出:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
3. 如果无法拉取镜像
如果在拉取镜像时遇到网络问题,可以尝试配置国内镜像加速器。
配置 Docker 镜像加速器(推荐阿里云)
运行以下命令创建或编辑 Docker 的配置文件:
sudo mkdir -p /etc/docker
sudo nano /etc/docker/daemon.json
在文件中添加以下内容(以阿里云加速器为例):
[外链图片转存中…(img-uGEYLoob-1734706751751)]
{
"registry-mirrors": ["https://qlbp0ohw.mirror.aliyuncs.com"]
}
在FinalShell中,保存并退出(按 Ctrl+O
,然后按 Enter
,最后按 Ctrl+X
)。
重启 Docker 服务
应用新配置后,重启 Docker 服务:
sudo systemctl restart docker
然后再次尝试运行测试镜像:
sudo docker run hello-world
一般情况下,是可以成功的。
2、拉取MySQL镜像
接下来,您需要从Docker Hub拉取MySQL镜像。执行以下命令:
sudo docker pull mysql:latest
要在Ubuntu 20.04上使用Docker安装MySQL,可以按照以下步骤操作:
3. 运行MySQL容器
一旦镜像下载完成,可以启动一个MySQL容器。假设您希望使用root
用户,并设置密码为your_password
,可以运行以下命令:
sudo docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -d mysql:latest
4. 查看容器运行状态
您可以通过以下命令查看MySQL容器是否正在运行:
sudo docker ps
5. 连接到MySQL容器
要进入MySQL容器,您可以使用以下命令:
sudo docker exec -it mysql-container mysql -u root -p
系统会提示您输入密码,输入您在运行容器时设置的MYSQL_ROOT_PASSWORD
。
6. (可选)配置MySQL端口映射
如果您希望从外部访问MySQL数据库,可以在运行容器时指定端口映射。例如:
sudo docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -d mysql:latest
这将容器的3306端口映射到主机的3306端口,使您可以通过主机的IP地址访问MySQL。
7. 停止和删除容器
如果您不再需要该MySQL容器,可以通过以下命令停止和删除容器:
sudo docker stop mysql-container
sudo docker rm mysql-container
-name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -d mysql:latest
这将容器的3306端口映射到主机的3306端口,使您可以通过主机的IP地址访问MySQL。
### 7. 停止和删除容器
如果您不再需要该MySQL容器,可以通过以下命令停止和删除容器:
```bash
sudo docker stop mysql-container
sudo docker rm mysql-container