直接在 docker 的 container 中运行 PM2 可能会遇到以下问题:1
PM2 dameon PID = 1
0 with /.pm2/pm2.log file not found
这是因为 /.pm2
目录不存在造成的。可能很多人此时会想到去创建该目录,事实上是不必要的,比较好的做法是使用官方提供的 dump
命令。
运行 PM2 的 Dockerfile ,可以参考:
1 | FROM node:0.11.13 |
搞定。
直接在 docker 的 container 中运行 PM2 可能会遇到以下问题:1
PM2 dameon PID = 1
0 with /.pm2/pm2.log file not found
这是因为 /.pm2
目录不存在造成的。可能很多人此时会想到去创建该目录,事实上是不必要的,比较好的做法是使用官方提供的 dump
命令。
运行 PM2 的 Dockerfile ,可以参考:
1 | FROM node:0.11.13 |
搞定。
操作 docker
的时候每次都需要 sudo
来提升权限,比较麻烦,可以有一个简单的方法来解决:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16# 如果 docker 用户组不存在,那么先添加docker用户组。
# 事实上例如在 CentOS 上使用 `yum` 安装的 docker,已经存在 docker 组
sudo groupadd docker
# 把当前使用的账号添加到 docker 组
sudo gpasswd -a username docker
# > Adding user username to group docker
# 然后 restart docker
sudo service docker restart
# 完成,但此时还是旧的环境状态,先注销
exit
# 再次登录
ssh you.server.ip
# 试试
docker images
# > REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
# Done!
当启动 Docker 服务的时候,遇到如下错误:1
2
3
4Starting cgconfig service: Error: cannot mount cpuset to /cgroup/cpuset: Device or resource busy
/sbin/cgconfigparser; error loading /etc/cgconfig.conf: Cgroup mounting failed
Failed to parse /etc/cgconfig.conf [FAILED]
Starting docker: [ OK ]
可以使用 cgclear
命令,清理一下。
之后记得先停止 Docker ,再启动。1
2
3cgclear
service docker stop
service docker start
PS. OS = CentOS