背景
阿里云ecs的相关活动很早以前就知道了,但直到现在快要上研二了,希望自己做一个项目,但本身就一个破笔记本,不想再装些环境什么的。所以就想起了阿里云的活动,想申请一个ecs来搭建下环境
需求
所做的项目需要数据库,因此希望在ecs上快速搭建相应的数据库并实现项目远程的连接。为了避免繁琐的配置,决定利用docker来完成这项事情。
对于ecs的使用,官方开始提供了一个操作练习。登录界面设计也比较简洁,应该是比较好上手的。
实践-环境搭建
首先是通过默认的workbench就可以进到远程连接的命令行界面。
可以看到,默认就是root登录的。
然后就可以直接进行docker的安装了。
官方这里有一个安装的向导,可以参考:
https://help.aliyun.com/document_detail/51853.html我这里是直接使用了
yum -y install docker
命令来安装docker。
虽然ecs一般不会关闭,但是我还是设置了一下开机自启动:
sudo systemctl start docker
# 设置开机自启动
sudo systemctl enable docker
之后可以用docker -v 查看下docker版本:
然后管理镜像用得命令也是文档的命令:
docker pull registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5
以上docker就部署在我们的ecs上了。
之后是安装mysql。
输入下面的命令安装mysql并配置端口映射和文件挂载:
sudo docker pull mysql:5.7
# --name指定容器名字 -v目录挂载 -p指定端口映射 -e设置mysql参数 -d后台运行
sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
然后可以用docker ps来查看一下我们的镜像,可以看到有mysql。
如果要进到mysql的bash中,可以用命令:
docker exec -it mysql bin/bash
使用exit退出。
因为我们配置了目录映射,因此也可以在ecs上修改对应映射的配置文件:/mydata/mysql/conf/my.conf
实践--数据库连接
在本地使用的sqlyog来连接数据库。
首先是要配置ssh连接,脸上服务器:
上面SSH主机地址就是ecs的外网ip。
然后是配置数据库的连接:
但是做上面事情的时候有两个注意点:
1.首先是mysql要允许其他服务器连接,用docker安装的mysql似乎没有遇到这个问题。
2.然后是要开放服务器的3306端口,这个要用到阿里云的安全组,官方的文档写得很细。可以看看:
https://help.aliyun.com/document_detail/25471.html。
结果
成功再ecs上搭建了环境,docker部署环境就是快,体会到了虚拟化技术的魅力。ecs快速分配资源也是很爽,同时官方提供的文档也很详细,最后项目也能连上数据库了,还是挺开心的。