服务计算 第十七周
在docker上部署MySql实现StarWarsAPI
1 主要内容
本次实验在
StarWars
原有的基础上进行,我仍然负责同样的部分:后端数据库。
上一次实验链接
2 基本介绍
大致功能与之前一样,但是使用了三个容器来包装前端、后端API、后端数据库。
本博客前半部分介绍了docker的部署以及docker上MySql的部署;后半部分介绍了MySql的实现。
3 部署Docker及MySql
3.1 安装Docker
首先,安装docker
sudo yum install docker-engine
开启docker服务
service docker start
3.2 部署MySql
获取最新的MySql镜像(也可以不获取,这样在部署的时候会自动获取)
sudo docker pull mysql/mysql-server:latest
生成MySql容器
sudo docker run --name mysql -d --restart always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /docker/mysql_data:/var/lib/mysql mysql/mysql-server
各参数属性的意义:
--name mysql
:名称mysql;-d:后台运行容器,并返回容器ID;–restart always:容器退出时重启容器;-p 3306:3306:将宿主机的3306端口映射到容器的3306端口;-e MYSQL_ROOT_PASSWORD=123456:设置mysql的root密码为123456;-v /docker/mysql_data:/var/lib/mysql:将宿主机的目录/docker/mysql_data映射到容器的目录/var/lib/mysql,以存放容器的mysql数据库文件。
查看已经部署的容器:
-s
查看已经部署的容器-a
查看已经启动的容器。
sudo docker ps -a
sudo docker ps -s