1.docker pull registry
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
2.安装好docker-compose
在/usr/docker里面放入docker-compose文件 并修改里面的IP地址
version: '2'
services:
back:
image: 124.70.179.58:5000/back
expose:
- "9001"
ports:
- 9001:9001
environment:
TZ: Asia/Shanghai
container_name: back
restart: always
privileged: true
build:
context: .
dockerfile: Dockerfile
volumes:
- /usr/docker/nginx/file:/upload
front:
image: 124.70.179.58:5000/front
expose:
- "9002"
ports:
- 9002:9002
environment:
- TZ=Asia/Shanghai
container_name: front
restart: always
privileged: true
build:
context: .
dockerfile: Dockerfile
volumes:
- /upload:/upload
## 私有服务器仓库
# registry:
# image: registry
# restart: always
# container_name: registry
# ports:
# - 5000:5000
# volumes:
# - /usr/local/docker/registry/data:/var/lib/registry
## redis
# redis:
# image: redis:latest
# container_name: redis
# restart: always
# ports:
# - 6379:6379
# networks:
# - net_db
# volumes:
# - ./redis.conf:/usr/local/etc/redis/redis.conf
# - ./data:/data
# command:
# redis-server --requirepass pu8licw0rd --appendonly yes
#
## mysql
# mysql:
# restart: always
# image: mysql:5.7.16
# container_name: my_mysql
# command: --default-authentication-plugin=mysql_native_password
# networks:
# - net_db
# volumes:
# - ./mydir:/mydir
# - ./datadir:/usr/docker-compose/mysql/mysql
# - ./conf/my.cnf:/usr/docker-compose/mysql/my.cnf
# 数据库还原目录 可将需要还原的sql文件放在这里
# - /docker/mysql/source:/docker-entrypoint-initdb.d
# environment:
# - "MYSQL_ROOT_PASSWORD=hub123456"
# - "MYSQL_DATABASE=hub"
# - "TZ=Asia/Shanghai"
# ports:
# - 33506:3306
#
## rabbitmq
# rabbitmq:
# image: rabbitmq:3.8.3-management
# container_name: rabbitmq
# restart: always
# ports:
# - 15672:15672
# - 5672:5672
# volumes:
# - ./data:/var/lib/rabbitmq
# environment:
# - RABBITMQ_DEFAULT_USER=root
# - RABBITMQ_DEFAULT_PASS=root
# kkfileview 文件预览
# kkfileview:
# image: keking/kkfileview:latest
# container_name: kkfileview
# restart: always
# environment:
# - TZ=Asia/Shanghai
# ports:
# - 8012:8012
# volumes: #将上传的文件挂载在宿主主机
# - /usr/docker/upload:/opt
# hs_school_back_web: # 前端node容器(运行nginx中的Vue项目)
# container_name: hs_school_back_web # 容器名为'hs_school_back_web'
# image: 112.124.38.131:5000/hs_school_back_web #基于dockerfile-nginx镜像
# restart: always # 重启策略: 容器退出时总是重启容器
# build:
# context: ./ # 指定设定上下文根目录,然后以该目录为准指定Dockerfile
# dockerfile: back/back-Dockerfile
# environment:
# TZ: Asia/Shanghai
# ports:
# - "9528:80" # 映射端口
#
# hs_school_front_web: # 前端node容器(运行nginx中的Vue项目)
# container_name: hs_school_front_web # 容器名为'hs_school_front_web'
# image: 112.124.38.131:5000/hs_school_front_web #基于dockerfile-nginx镜像
# restart: always # 重启策略: 容器退出时总是重启容器
# build:
# context: ./ # 指定设定上下文根目录,然后以该目录为准指定Dockerfile
# dockerfile: front/front-Dockerfile
# environment:
# TZ: Asia/Shanghai
# ports:
# - "80:80" # 映射端口
# jenkins:
# image: 'jenkinsci/blueocean'
# container_name: jenkins
# restart: always
# ports:
# - '8099:8080'
# - '50000:50000'
# volumes:
# - '/var/jenkins_home:/var/jenkins_home'
# - '/opt/develop_resource/apache-maven-3.6.3:/usr/local/maven'
networks:
net_db:
driver: bridge
3.修改路径下的文件cd /etc/docker。
完成后执行重新加载
systemctl daemon-reload
重启docker
systemctl restart docker
daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com"
],
"insecure-registries": [
"http://124.70.179.58:5000"
]
}
4.在本地docker里面设置好仓库路径
5.在本地docker配置文件修改路径
version: '2'
services:
front:
#image: 121.36.252.158:5000/front #测试地址
image: 124.70.179.58:5000/front #生产地址
expose:
- "9002"
ports:
- 9002:9002
environment:
- TZ=Asia/Shanghai
container_name: front
restart: always
privileged: true
build:
context: .
dockerfile: Dockerfile
volumes:
- /upload:/upload
# redis:
# image: redis:latest
# container_name: redis
# restart: always
# ports:
# - 6379:6379
# networks:
# - net_db
# volumes:
# - ./redis.conf:/usr/local/etc/redis/redis.conf
# - ./data:/data
# command:
# redis-server --requirepass pu8licw0rd --appendonly yes
#
# mysql:
# restart: always
# image: mysql:5.7.16
# container_name: my_mysql
# command: --default-authentication-plugin=mysql_native_password
# networks:
# - net_db
# volumes:
# - ./mydir:/mydir
# - ./datadir:/usr/docker-compose/mysql/mysql
# - ./conf/my.cnf:/usr/docker-compose/mysql/my.cnf
# # 数据库还原目录 可将需要还原的sql文件放在这里
# - /docker/mysql/source:/docker-entrypoint-initdb.d
# environment:
# - "MYSQL_ROOT_PASSWORD=wmkj123456"
# - "MYSQL_DATABASE=e-cigarette"
# - "TZ=Asia/Shanghai"
# ports:
# - 33506:3306
# hs_school_back_web: # 前端node容器(运行nginx中的Vue项目)
# container_name: hs_school_back_web # 容器名为'hs_school_back_web'
# image: 112.124.38.131:5000/hs_school_back_web #基于dockerfile-nginx镜像
# restart: always # 重启策略: 容器退出时总是重启容器
# build:
# context: ./ # 指定设定上下文根目录,然后以该目录为准指定Dockerfile
# dockerfile: back/back-Dockerfile
# environment:
# TZ: Asia/Shanghai
# ports:
# - "9528:80" # 映射端口
#
# hs_school_front_web: # 前端node容器(运行nginx中的Vue项目)
# container_name: hs_school_front_web # 容器名为'hs_school_front_web'
# image: 112.124.38.131:5000/hs_school_front_web #基于dockerfile-nginx镜像
# restart: always # 重启策略: 容器退出时总是重启容器
# build:
# context: ./ # 指定设定上下文根目录,然后以该目录为准指定Dockerfile
# dockerfile: front/front-Dockerfile
# environment:
# TZ: Asia/Shanghai
# ports:
# - "80:80" # 映射端口
# rabbitmq:
# image: rabbitmq:3.8.3-management
# container_name: rabbitmq
# restart: always
# ports:
# - 15672:15672
# - 5672:5672
# volumes:
# - ./data:/var/lib/rabbitmq
# environment:
# - RABBITMQ_DEFAULT_USER=root
# - RABBITMQ_DEFAULT_PASS=root
networks:
net_db:
driver: bridge