背景
- 公司内部服务器无法连通外网。
- DMZ区有一台服务器可以连通外网。
- 自己采用自己公司部门内部的DMZ区服务器搭建内网的go仓库代理源
DMZ区服务器安装相关服务
服务器需要有docker基础环境
服务器IP地址为: 192.168.1.214
安装服务统一使用docker镜像运行容器来实现。
1. 容器化CoreDNS服务
目录结构
]$ tree ./coredns
./coredns
├── Corefile
├── hosts
└── install_coredns.sh
0 directories, 3 files
Corefile文件内容
$ cat Corefile
.:53 {
hosts {
fallthrough
}
forward . 114.114.114.114 8.8.8.8
errors
cache
}
hosts配置内容
$ cat hosts
192.168.1.224 github.com
安装coredns的脚本内容如下:
$ cat install_coredns.sh
#!/bin/bash
docker stop coredns
docker rm -f coredns
docker run -d \
--restart always \
--name coredns \
-p 53:53/tcp \
-p 53:53/udp \
-v /data/devops_scripts/coredns/hosts:/etc/hosts \
-v /data/devops_scripts/coredns/Corefile:/Corefile \
coredns/coredns
安装CoreDNS服务
sudo bash install_coredns.sh
安装完成。
2.容器化运行nexus服务
$ cat run.sh
HOME_PATH=$PWD
DATA_PATH=/data/nexus_data/:/nexus-data/
LOCALE_TIME=/usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
mkdir -p /data/nexus_data && chown -R 200:200 /data/nexus_data
docker stop nexus
docker rm -f nexus
docker run --restart=always --privileged=true \
--name nexus \
-p 8081:8081 -p 8888-8889:8888-8889 \
-e INSTALL4J_ADD_VM_PARAMS="-Xms8g -Xmx8g -XX:MaxDirectMemorySize=8g -Djava.util.prefs.userRoot=/nexus-data" \
-e NEXUS_CONTEXT=nexus \
-e REGISTRY_STORAGE_DELETE_ENABLED=true \
--ulimit nofile=655350 \
--ulimit memlock=-1 \
--memory=16G \
--memory-swap=-1 \
--cpuset-cpus