mirror of
https://github.com/xiaoxinpro/nginx-proxy-manager-zh.git
synced 2025-02-02 09:48:13 -05:00
Fixes for start-dev and optimisations
This commit is contained in:
parent
bc3d9ec099
commit
6b7ae48570
@ -38,9 +38,6 @@ tasks:
|
||||
sh: git log -n 1 --format=%h
|
||||
VERSION:
|
||||
sh: cat ../.version
|
||||
env:
|
||||
GO111MODULE: on
|
||||
CGO_ENABLED: 1
|
||||
|
||||
lint:
|
||||
desc: Linting
|
||||
|
@ -16,7 +16,9 @@ ENV GOPROXY=$GOPROXY \
|
||||
ACMESH_HOME=/data/.acme.sh \
|
||||
CERT_HOME=/data/.acme.sh/certs \
|
||||
LE_CONFIG_HOME=/data/.acme.sh/config \
|
||||
LE_WORKING_DIR=/data/.acme.sh
|
||||
LE_WORKING_DIR=/data/.acme.sh \
|
||||
CGO_ENABLED=1 \
|
||||
GO111MODULE=on
|
||||
|
||||
RUN echo "fs.file-max = 65535" > /etc/sysctl.conf
|
||||
|
||||
|
@ -4,9 +4,13 @@ services:
|
||||
|
||||
npm:
|
||||
image: nginxproxymanager:dev
|
||||
container_name: "npm.dev"
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: ./dev/Dockerfile
|
||||
context: ../
|
||||
dockerfile: ./docker/dev/Dockerfile
|
||||
args:
|
||||
GOPROXY: "${GOPROXY:-}"
|
||||
GOPRIVATE: "${GOPRIVATE:-}"
|
||||
ports:
|
||||
- 3080:80
|
||||
- 3081:81
|
||||
@ -15,7 +19,7 @@ services:
|
||||
DEVELOPMENT: 'true'
|
||||
GOPROXY: "${GOPROXY:-}"
|
||||
GOPRIVATE: "${GOPRIVATE:-}"
|
||||
YARN_REGISTRY: "${DAB_YARN_REGISTRY:-}"
|
||||
YARN_REGISTRY: "${YARN_REGISTRY:-}"
|
||||
NPM_LOG_LEVEL: 'debug'
|
||||
PUID: 1000
|
||||
PGID: 1000
|
||||
@ -23,8 +27,8 @@ services:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- ../:/app
|
||||
- ./rootfs/var/www/html:/var/www/html
|
||||
- ../data:/data
|
||||
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
||||
- npm_data_vol:/data
|
||||
working_dir: /app
|
||||
networks:
|
||||
default:
|
||||
@ -32,9 +36,21 @@ services:
|
||||
- website1.internal
|
||||
- website2.internal
|
||||
- website3.internal
|
||||
restart: unless-stopped
|
||||
|
||||
pebble:
|
||||
npm-stepca:
|
||||
image: nginxproxymanager/testca
|
||||
container_name: "npm.stepca"
|
||||
volumes:
|
||||
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
||||
networks:
|
||||
default:
|
||||
aliases:
|
||||
- ca.internal
|
||||
|
||||
npm-pebble:
|
||||
image: letsencrypt/pebble
|
||||
container_name: "npm.pebble"
|
||||
command: pebble -config /test/config/pebble-config.json
|
||||
environment:
|
||||
PEBBLE_VA_SLEEPTIME: 2
|
||||
@ -47,17 +63,20 @@ services:
|
||||
# required for https cert dns san
|
||||
- pebble
|
||||
|
||||
stepca:
|
||||
image: nginxproxymanager/testca
|
||||
volumes:
|
||||
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
||||
networks:
|
||||
default:
|
||||
aliases:
|
||||
- ca.internal
|
||||
npm-swagger:
|
||||
image: swaggerapi/swagger-ui:latest
|
||||
container_name: "npm.swagger"
|
||||
ports:
|
||||
- 3001:80
|
||||
environment:
|
||||
URL: "http://${SWAGGER_PUBLIC_DOMAIN:-127.0.0.1:3081}/api/schema"
|
||||
PORT: '80'
|
||||
depends_on:
|
||||
- npm
|
||||
|
||||
pdns:
|
||||
npm-pdns:
|
||||
image: pschiffe/pdns-mysql
|
||||
container_name: "npm.pdns"
|
||||
volumes:
|
||||
- '/etc/localtime:/etc/localtime:ro'
|
||||
environment:
|
||||
@ -71,45 +90,38 @@ services:
|
||||
PDNS_version_string: 'anonymous'
|
||||
PDNS_default_ttl: 1500
|
||||
PDNS_allow_axfr_ips: '127.0.0.0/8,192.0.0.0/8,10.0.0.0/8,172.0.0.0/8'
|
||||
PDNS_gmysql_host: pdns-db
|
||||
PDNS_gmysql_host: npm-pdns-db
|
||||
PDNS_gmysql_port: 3306
|
||||
PDNS_gmysql_user: pdns
|
||||
PDNS_gmysql_password: pdns
|
||||
PDNS_gmysql_dbname: pdns
|
||||
depends_on:
|
||||
- pdns-db
|
||||
- npm-pdns-db
|
||||
networks:
|
||||
default:
|
||||
aliases:
|
||||
- ns1.pdns
|
||||
- ns2.pdns
|
||||
|
||||
pdns-db:
|
||||
npm-pdns-db:
|
||||
image: mariadb:10.7.1
|
||||
container_name: "npm.pdns.db"
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: 'pdns'
|
||||
MYSQL_DATABASE: 'pdns'
|
||||
MYSQL_USER: 'pdns'
|
||||
MYSQL_PASSWORD: 'pdns'
|
||||
volumes:
|
||||
- pdns_mysql_vol:/var/lib/mysql
|
||||
- npm_pdns_mysql_vol:/var/lib/mysql
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- ./dev/pdns-db.sql:/docker-entrypoint-initdb.d/01_init.sql:ro
|
||||
|
||||
dnsrouter:
|
||||
npm-dnsrouter:
|
||||
image: jc21/dnsrouter
|
||||
container_name: "npm.dnsrouter"
|
||||
volumes:
|
||||
- ./dev/dnsrouter-config.json.tmp:/dnsrouter-config.json:ro
|
||||
|
||||
swagger:
|
||||
image: swaggerapi/swagger-ui:latest
|
||||
ports:
|
||||
- 3001:80
|
||||
environment:
|
||||
URL: "http://${SWAGGER_PUBLIC_DOMAIN:-127.0.0.1:3081}/api/schema"
|
||||
PORT: '80'
|
||||
depends_on:
|
||||
- npm
|
||||
|
||||
volumes:
|
||||
pdns_mysql_vol:
|
||||
npm_data_vol:
|
||||
npm_pdns_mysql_vol:
|
||||
|
@ -19,8 +19,8 @@ if hash docker-compose 2>/dev/null; then
|
||||
echo -e "${BLUE}❯ ${CYAN}Starting Dev Stack ...${RESET}"
|
||||
|
||||
# Bring up a stack, in steps so we can inject IPs everywhere
|
||||
docker-compose up -d pdns pdns-db
|
||||
PDNS_IP=$(get_container_ip "pdns")
|
||||
docker-compose up -d npm-pdns npm-pdns-db
|
||||
PDNS_IP=$(get_container_ip 'npm-pdns')
|
||||
echo -e "${BLUE}❯ ${YELLOW}PDNS IP is ${PDNS_IP}${RESET}"
|
||||
|
||||
# adjust the dnsrouter config
|
||||
@ -30,8 +30,8 @@ if hash docker-compose 2>/dev/null; then
|
||||
jq --arg a "$PDNS_IP" '.servers[0].upstreams[1].upstream = $a' "$LOCAL_DNSROUTER_CONFIG" > "$LOCAL_DNSROUTER_CONFIG.tmp"
|
||||
|
||||
# dnsrouter
|
||||
docker-compose up -d dnsrouter
|
||||
DNSROUTER_IP=$(get_container_ip 'dnsrouter')
|
||||
docker-compose up -d npm-dnsrouter
|
||||
DNSROUTER_IP=$(get_container_ip 'npm-dnsrouter')
|
||||
echo -e "${BLUE}❯ ${YELLOW}DNS Router IP is ${DNSROUTER_IP}${RESET}"
|
||||
|
||||
# mount the resolver
|
||||
@ -40,14 +40,14 @@ if hash docker-compose 2>/dev/null; then
|
||||
printf "nameserver %s\noptions ndots:0" "${DNSROUTER_IP}" > "${LOCAL_RESOLVE}"
|
||||
|
||||
# bring things up, but only what we haven't already created
|
||||
docker-compose up -d --remove-orphans --force-recreate --build npm pebble stepca swagger
|
||||
docker-compose up -d --remove-orphans --force-recreate --build npm npm-pebble npm-stepca npm-swagger
|
||||
|
||||
if [ "$1" == "-f" ]; then
|
||||
echo -e "${BLUE}❯ ${YELLOW}Following Backend Container:${RESET}"
|
||||
docker logs -f npmdev-npm-1
|
||||
docker logs -f npm.dev
|
||||
else
|
||||
echo -e "${YELLOW}Tip:${RESET} You can follow the output of some of the containers with:"
|
||||
echo " docker logs -f npmdev-npm-1"
|
||||
echo " docker logs -f npm.dev"
|
||||
echo -e "${YELLOW}Tip:${RESET} Open a database terminal with:"
|
||||
echo " ./scripts/sqlite"
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user