liujsim / blog

blog
https://github.com/liujsim/blog/issues
MIT License
1 stars 0 forks source link

常用 docker 配置 #5

Open liujsim opened 6 years ago

liujsim commented 6 years ago

推荐使用 portainer 管理容器,为了避免每次重启容器 ip 改变,使用自定义静态 ip

系统:ubuntu 16.04

由于 mac 系统限制,下列方案 ip 无法与主机互通,可以通过本机 ip 和端口访问(mac 上执行去掉 --network 参数)

Networking features in Docker for Mac

静态 ip

创建自定义网络

docker network create --subnet=172.18.0.0/16 mynetwork

subnet 子网区间不能与目前的重复 然后在创建容器时添加下列参数指定 ip,具体参考下面的示例

--network mynetwork --ip [IP-ADDRESS] \

portainer

docker run --name portainer \
  --network mynetwork --ip 172.18.0.5 \
  -p 9000:9000 \
  --restart always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /srv/docker/portainer:/data  \
  -d portainer/portainer 

然后访问 http://172.18.0.5 :9000 根据提示操作

nginx

docker run --name  nginx-master \
  --restart=always \
  --network mynetwork --ip 172.18.0.10 \
  -p 80:80 -p 443:443  \
   -v /srv/docker/certs:/etc/nginx/certs \
  -v /srv/docker/nginx/conf.d:/etc/nginx/conf.d \
  -v /srv/docker/nginx/html:/usr/share/nginx/html \
  -d nginx

MySQL

docker run --name mysql \
  --network mynetwork --ip 172.18.0.20 \
  -p 3306:3306 \
  -v /srv/docker/MySQL:/var/lib/mysql \
  --restart=always \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -d mysql \
  --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

Redis

docker run --name redis \
  --network mynetwork --ip 172.18.0.30 \
  -p 6379:6379 \
  -v /srv/docker/Redis/:/data \
  -d redis:alpine \
  --appendonly yes

mongodb

docker run --name mongo \
--network mynetwork --ip 172.18.0.31 \
-p 27017:27017 \
-v /srv/docker/MongoDB:/data/db \
-d mongo

portainer 服务列表

liujsim commented 6 years ago

docker 与防火墙

docker 默认无视系统防火墙规则,具体参考下面链接

让docker处于ufw防火墙的控制下

无视系统防火墙的docker

Shadowsocks限制设备连接数 和 限制端口速度 的方法

liujsim commented 5 years ago

人人影视

docker run -d --name rrshare -p 3001:3001 -v yourPath/renren:/opt/work/store oldiy/rrshare64:latest