docker部署mysql5.6.40
阿新 • • 發佈:2019-01-08
基本是照著這個做的:https://www.cnblogs.com/straycats/p/9251571.html
預設登入進來在/root目錄,直接新建的目錄 /root/mysql,感覺有點不合理,暫時沒改
1、初始化docker swarm
docker swarm init
2、在剛剛建立的目錄下新建一個data目錄,以及一個檔案:mysql.yml
version: '3.6' services: mysql: image: mysql:5.6.40 environment: - TZ=Asia/Shanghai - MYSQL_ROOT_PASSWORD=123456volumes: - /root/mysql/data:/var/lib/mysql deploy: replicas: 1 restart_policy: condition: any resources: limits: cpus: "0.2" memory: 512M update_config: parallelism: 1 # 每次更新1個副本 delay: 5s # 每次更新間隔 monitor: 10s # 單次更新多長時間後沒有結束則判定更新失敗 max_failure_ratio:0.1 # 更新時能容忍的最大失敗率 order: start-first # 更新順序為新任務啟動優先 ports: - 3306:3306 networks: - myswarm-net networks: myswarm-net:
3、執行
docker stack deploy -c mysql.yml mysqlstack
印象中 docker stack 工具是和docker一起安裝到系統的
4、還需要配置mysql允許遠端訪問(完全copy過來的,僅以備忘):
docker ps
docker exec -it 0d66abc8ce32 /bin/bash
mysql -uroot -p
mysql> use mysql;
mysql> grant all privileges on *.* to [email protected]'%' identified by "123456";
mysql> flush privileges;
mysql> exit
exit
然後在別的機器就可以用mysql管理工具連過來了