Docker-应用栈实验演示:云计算课程
参考教程
实验环境
无论在Windows、centos还是Ubuntu下docker的命令是不会变的
本次演示是在Ubuntu18.10(Docker version 18.06.1-ce)下完成的,注意在Linux下的权限问题(非root用户需加sudo授权)
还有一个关键的地方,如果你是在vagrant创建的虚拟机里面进行操作的一点要在虚拟机配置文件Vagrantfile里面添加
相应端口的映射,用服务器端操作,当然也是要开放相应的端口
docker命令大全:菜鸟教程
镜像准备
// 拉取镜像
sudo docker pull redis
sudo docker pull django
sudo docker pull haproxy
容器初始化
/*容器初始化,每个命令执行完后,退出容器继续操作之前要先重新启动当
前容器再继续执行下面的初始化命令*/
sudo docker run -it --name master-redis redis /bin/bash
sudo docker run -it --name redis-slave1 --link master-redis:master redis /bin/bash
sudo docker run -it --name redis-slave2 --link master-redis:master redis /bin/bash
sudo docker run -it --name App1 --link master-redis:db -v ~/projects/Django/App1:/usr/src/app django /bin/bash
sudo docker run -it --name App2 --link master-redis:db -v ~/projects/Django/App2:/usr/src/app django /bin/bash
sudo docker run -it --name App3 --link master-redis:db -v ~/projects/Django/App3:/usr/src/app django /bin/bash
sudo docker run -it --name HAProxy --link App1:App1 --link App2:App2 --link App3:App3 -p 6301:6301 -v ~/projects/HAProxy:/tmp haproxy /bin/bash
添加主从数据库的配置文件
//需要现在宿主机上找到主从数据库的volume位置:
docker inspect -f '{
{ .Mounts }}' master-redis
//从数据库的改成相应的名称redis-slave1或者redis-slave2
//然后cd到相应的data目录(这个根据自己的情况复制相应的目录),进行redis.conf配置文件的添加
cd