常用 docker 配置
liujsim opened this issue · comments
liuyi commented
推荐使用 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
liuyi commented
docker 与防火墙
docker 默认无视系统防火墙规则,具体参考下面链接
liuyi commented
人人影视
docker run -d --name rrshare -p 3001:3001 -v yourPath/renren:/opt/work/store oldiy/rrshare64:latest