mirror of
https://github.com/jc21/nginx-proxy-manager.git
synced 2024-08-30 18:22:48 +00:00
128 lines
3.2 KiB
YAML
128 lines
3.2 KiB
YAML
# WARNING: This is a DEVELOPMENT docker-compose file used for development of the entire app, it should not be used for production.
|
|
services:
|
|
|
|
npm:
|
|
image: nginxproxymanager:dev
|
|
container_name: 'npm.dev'
|
|
build:
|
|
context: ../
|
|
dockerfile: ./docker/dev/Dockerfile
|
|
args:
|
|
GOPROXY: "${GOPROXY:-}"
|
|
GOPRIVATE: "${GOPRIVATE:-}"
|
|
ports:
|
|
- 3080:80
|
|
- 3081:81
|
|
- 3443:443
|
|
environment:
|
|
#DEBUG: 'true'
|
|
DEVELOPMENT: 'true'
|
|
GOPROXY: "${GOPROXY:-}"
|
|
GOPRIVATE: "${GOPRIVATE:-}"
|
|
YARN_REGISTRY: "${YARN_REGISTRY:-}"
|
|
NPM_LOG_LEVEL: 'debug'
|
|
PUID: 1000
|
|
PGID: 1000
|
|
volumes:
|
|
- /etc/localtime:/etc/localtime:ro
|
|
- ../:/app
|
|
- ./rootfs/var/www/html:/var/www/html
|
|
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
|
- npm_data_vol:/data
|
|
working_dir: /app
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- website1.internal
|
|
- website2.internal
|
|
- website3.internal
|
|
restart: unless-stopped
|
|
|
|
npm-stepca:
|
|
image: jc21/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
|
|
volumes:
|
|
- ./dev/pebble-config.json:/test/config/pebble-config.json
|
|
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
|
networks:
|
|
default:
|
|
aliases:
|
|
# required for https cert dns san
|
|
- pebble
|
|
|
|
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
|
|
|
|
npm-pdns:
|
|
image: pschiffe/pdns-mysql
|
|
container_name: "npm.pdns"
|
|
volumes:
|
|
- '/etc/localtime:/etc/localtime:ro'
|
|
environment:
|
|
PDNS_master: 'yes'
|
|
PDNS_api: 'yes'
|
|
PDNS_api_key: 'npm'
|
|
PDNS_webserver: 'yes'
|
|
PDNS_webserver_address: '0.0.0.0'
|
|
PDNS_webserver_password: 'npm'
|
|
PDNS_webserver-allow-from: '127.0.0.0/8,192.0.0.0/8,10.0.0.0/8,172.0.0.0/8'
|
|
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: npm-pdns-db
|
|
PDNS_gmysql_port: 3306
|
|
PDNS_gmysql_user: pdns
|
|
PDNS_gmysql_password: pdns
|
|
PDNS_gmysql_dbname: pdns
|
|
depends_on:
|
|
- npm-pdns-db
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- ns1.pdns
|
|
- ns2.pdns
|
|
|
|
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:
|
|
- npm_pdns_mysql_vol:/var/lib/mysql
|
|
- /etc/localtime:/etc/localtime:ro
|
|
- './dev/pdns-db.sql:/docker-entrypoint-initdb.d/01_init.sql:ro'
|
|
|
|
npm-dnsrouter:
|
|
image: jc21/dnsrouter
|
|
container_name: "npm.dnsrouter"
|
|
volumes:
|
|
- ./dev/dnsrouter-config.json.tmp:/dnsrouter-config.json:ro
|
|
|
|
volumes:
|
|
npm_data_vol:
|
|
npm_pdns_mysql_vol:
|