地址
部署
环境: mac os
docker:19.03.4
- 此次部署我是使用docker部署,使用的mysql也在docker容器中
知识点: docker容器互通问题
docker容器相互访问,ip地址由docker自动分配ip。(都做到最后启动容器的时候发现启动不了,查看日志才发现数据库连接不到)
使用命令查看容器ip
docker inspect [mysql容器id]
“IPAddress”: “172.17.0.6” 即为分配的ip
部署开始
-
Yearning项目打包版本下载 下载最新版本文件,我这里下载的是Yearning v2.1.6.1
-
解压进入根目录执行dockerfile
docker build -t [镜像名] .
注意后面有个. ,不带-f参数默认构建当前目录下的dockerfile build命令参数参考
- 查看数据库ip,等下启动yearning使用(参考前面知识点docker容器互通问题)
docker inspect [mysql容器id]
- 查看镜像是否否建完成:
docker images
- 构建完成启动yearning:
docker run -d -it -p8000:8000 -e MYSQL_USER=root -e MYSQL_ADDR=172.17.0.6:3306 -e MYSQL_PASSWORD=123456 -e MYSQL_DB=Yearning --name yearning yearning
将8000映射到本地,http网站访问使用
MYSQL_USER=数据库用户名
MYSQL_ADDR=数据库地址
MYSQL_PASSWORD=数据库密码
- 访问loclahost:8000,访问成功,默认账号密码:admin/Yearning_admin
第一次部署失败排错
访问失败(我第一次启动没成功,返回了docker生成的容器id,但是没成功)
- docker ps 发现没有yearning容器启动
- 查看docker日志 docker logs [容器id]
数据库连接失败
- 删除之前镜像 docker rm [容器id]
- 查看mysql容器ip(参考上面知识点),修改ip参数启动容器
run -d -it -p8000:8000 -e MYSQL_USER=root -e MYSQL_ADDR=172.17.0.6:3306 -e MYSQL_PASSWORD=123456 -e MYSQL_DB=Yearning --name yearning yearning
- 访问成功 docker ps 也能看到容器
- 这次再看日志也有相关成功日志
(/var/jenkins_home/workspace/Yearning-go/src/service/migrate.go:46)
[2019-11-15 17:02:58] [1.91ms] INSERT INTO `core_graineds` (`username`,`rule`,`permissions`) VALUES ('admin','','{"ddl":"1","ddl_source":[],"dml":"1","dml_source":[],"user":"1","base":"1","auditor":[],"query":"1","query_source":[]}')
[1 rows affected or returned ]
初始化成功!
用户名: admin
密码:Yearning_admin
检查更新.......
数据已更新!
__ __ _____ ___ _____ __ _ _ __ _ _____
\ \ / / | ____| / | | _ \ | \ | | | | | \ | | / ___|
\ \/ / | |__ / /| | | |_| | | \| | | | | \| | | |
\ / | __| / / | | | _ / | |\ | | | | |\ | | | _
/ / | |___ / / | | | | \ \ | | \ | | | | | \ | | |_| |
/_/ |_____| /_/ |_| |_| \_\ |_| \_| |_| |_| \_| \_____/ v2.0.0
Welcome to Yearning2.0
https://yearning.io