- 一, docker 容器一直在重启
- 二, 运行的容器PORTS为空
- 三, curl 不通
- 四, Daocloud的重新学习
- 五, LNMP-MYSQL密码重置
- 六, Daocloud-使用 Nginx 智能负载均衡
- 七, 报错 open /usr/local/go/lib/time/zoneinfo.zip: no such file or directory
- 八, 传统docker启动
- 九, ports 和expose 的区别
- 十, 安全组
- 十一, 连接数据库
- 十二, docker container 产生的数据- 使用volume
- 十三, ssh上传本地文件到linux服务器
- 十四, Docker-compose 启动容器并覆盖掉原有的容器
daocloud部署docker应用
一, docker 容器一直在重启
用daocloud 部署应用成功后,在服务器上查看docker container 状态, 发现容器一直处于 restarting状态, 每隔60s 重启一次.
遂百度, 在daocloud的应用中容器一栏 添加启动命令./wenku ,容器就没有一直重启了.
二, 运行的容器PORTS为空
三, curl 不通
输入命令:
curl ip:端口
显示:
curl: (7) Failed to connect to **.**.**.** port **: Timed out
四, Daocloud的重新学习
不重新看一遍文档,之前懒,不想看文档,想直接百度解决. : (
- 创建项目, 接入代码仓库 -> 部署应用 应用部署成功了
- 回到构建项目页的流程定义 是为了 自动构建,自动发布新版本的功能.
看了一下, 貌似没什么好看的…….
五, LNMP-MYSQL密码重置
find / -name lnmp找到 lnmp 安装目录- 安装包目录下有一个tools目录,里面放了很多脚本,如备份,重置密码等,进入该目录.
- ` ./reset_mysql_root_password.sh`运行MySQL/MariaDB 重置root密码的工具 reset_mysql_root_password.sh
- 输入新密码, done.
mysql -u root -p输入新密码,能进入.
六, Daocloud-使用 Nginx 智能负载均衡
http://guide.daocloud.io/dcs/nginx-9161568.html
七, 报错 open /usr/local/go/lib/time/zoneinfo.zip: no such file or directory
- 从 daocloud pull 镜像
- 运行镜像生成容器, 报错
[ORM]2019/03/09 06:49:57 register db Ping `default`, open /usr/local/go/lib/time/zoneinfo.zip: no such file or directory
panic: register db Ping `default`, open /usr/local/go/lib/time/zoneinfo.zip: no such file or directory
百度之, 竟然找到了学长曾经提交的 issue. or2 链接
学长是通过改 docker-compose 来解决问题的, 但是我拿的学长更改后的代码, 为什么又会出现这种问题呢, 待解决.
八, 传统docker启动
直接从github 下载代码,然后生成镜像和容器.
- 进入项目文件, 创建镜像
docker build -t ma-image . - 进入docker-compose所在目录启动容器
docker-compose up -d启动的容器仍然 PORTS 为空
九, ports 和expose 的区别
这个博主也写了很多关于docker的博文, 可参考
PORTS
ports暴露容器端口到主机的任意端口或指定端口
expose
- expose 暴露容器给 link 到当前容器的容器
- expose 不会将端口暴露给主机
十, 安全组
在 阿里云控制台 > 服务器 > 服务器安全设置 > 添加端口
十一, 连接数据库
- 需要连接数据库 docker 若没有连接的话, docker container 就不会正常启动 (学长指点)
十二, docker container 产生的数据- 使用volume
- 如果想数据持久化,需使用
volume或者data container,这样在容器关闭后可以再通过-v或者--volumes-from重新使用以前的数据. - 如果没有使用数据卷(Volume)或数据容器,则容器内运行期间产生的数据在容器关闭后,又回到启动容器时的原始镜像状态.
十三, ssh上传本地文件到linux服务器
(1) 从服务器上下载文件到本地
例如:把192.168.0.10机器上的source.txt文件拷贝到本地的/home/work目录下
scp root@192.168.0.10:/home/source.txt /home/work/
(2) 上传本地文件到服务器
scp /home/1.txt root@39.107.80.119:/var/www/
(3) 从服务器下载整个目录
scp -r root@39.107.80.119:/var/www/test /var/www/
(4) 上传目录到服务器
scp -r test root@39.107.80.119:/var/www/
十四, Docker-compose 启动容器并覆盖掉原有的容器
docker-compose build
docker-compose up -d