build: 🏗️ Update docker files

main
Keith Irwin 2024-04-18 20:40:40 -06:00
parent be428caa51
commit 6f71882d98
Signed by: ki9
GPG Key ID: DF773B3F4A88DA86
3 changed files with 76 additions and 16 deletions

View File

@ -14,36 +14,50 @@
services:
# Remove profiles: donotstart to start a monerod node
# Warning: This will download the blockchain!
monerod:
container_name: monerod
# Uncomment these lines to start a monerod node
# Warning: This will download the blockchain!
profiles:
- donotstart
# If you do, download and build monero here
build:
context: /usr/local/src/monero
volumes:
# Change /var/lib/monero to wherever you want to store the blockchain
- "/var/lib/monero:/home/monero/.bitmonero:rw"
# Leave this line to enable hugepages
- "/dev/hugepages:/dev/hugepages:rw"
networks:
monero:
# This is the docker IP where monerod runs
ipv4_address: 172.21.0.1
# Uncomment profiles: donotstart if you already have a dockerized smtp server
# Be sure to change the environment variables in .env if you use this
smtp:
# profiles:
# - donotstart
networks:
monero:
ipv4_address: 172.20.0.1
# Uncomment profiles: donotstart if you already have a
wallet:
container_name: smtp
# Uncomment this if you already have a dockerized smtp server
# profiles:
# - donotstart
networks:
monero:
# Docker IP where the SMTP server will run
ipv4_address: 172.20.0.1
wallet:
container_name: pago_wallet
networks:
monero:
# Docker IP where the wallet rpc will run
ipv4_address: 172.21.0.2
# This is the main pago server (processor API)
processor:
container_name: pago_api
networks:
# Pago's dockerized IPs
monero:
ipv4_address: 172.21.0.10
mail:
ipv4_address: 172.20.0.2
# Uncomment these lines to listen on 0.0.0.0:8080
#ports:
# - "8080:80/tcp"

View File

@ -12,20 +12,54 @@ networks:
services:
monerod:
image:
image: monero:latest
build:
context: /usr/local/src/monero
args:
- MONERO_GIT_TAG=latest
container_name: monerod
restart: unless-stopped
volumes:
- "/var/lib/monero:/home/monero/.bitmonero:rw"
- "/dev/null:/home/monero/.bitmonero/bitmonero.log:rw"
- "/dev/hugepages:/dev/hugepages:rw"
networks:
monero:
ipv4_address: 172.21.0.1
ports:
- "18080:18080/tcp"
environment:
DNS_PUBLIC: 'tcp://9.9.9.9'
command: >-
--disable-dns-checkpoints
--enable-dns-blocklist
--non-interactive
--prune-blockchain
--zmq-pub tcp://0.0.0.0:18083
--p2p-bind-ip=0.0.0.0
--p2p-bind-port=18080
--rpc-bind-ip=0.0.0.0
--rpc-bind-port=18081
--confirm-external-bind
--limit-rate=1024
wallet:
image:
container_name: pago_wallet
image: sethsimmons/simple-monero-wallet-rpc:latest
restart: unless-stopped
volumes:
- /etc/pago/wallet:/home/monero/wallet
command: --wallet-file pago
--password-file wallet.passwd
--disable-rpc-login
--rpc-bind-port=28081
--daemon-address=${MONERO_DAEMON_URI}
networks:
monero:
ipv4_address: 172.21.0.2
smtp:
container_name: smtp
image: ghcr.io/crazy-max/msmtpd:latest
domainname: ${MAIL_DOMAIN}
restart: unless-stopped
@ -42,8 +76,10 @@ services:
ipv4_address: 172.20.0.1
processor:
container_name: pago_api
build: .
restart: unless-stopped
command: start
networks:
monero:
ipv4_address: 172.21.0.10

View File

@ -1,11 +1,21 @@
# Staging or production
ENVIRONMENT='staging'
#ENVIRONMENT='prod'
# Timezone as region/City, i.e. America/Denver
TIMEZONE='UTC'
# Email
## Email ##
MAIL_DOMAIN='example.com'
MAIL_FROM='noreply@example.com'
# Change this if you changed the IP in docker-compose.override.yml
MAIL_HOST='172.20.0.1'
# https://nodemailer.com/smtp/
MAIL_URI='smtp://smtp:2500'
## Monero ##
# Which wallet account to use for payments
WALLET_ACCOUNT_INDEX=1
# Public remote node
MONERO_DAEMON_URI='https://xmr.gf4.pw'
# Local monero daemon (activate in docker-compose.override.yml)
#MONERO_DAEMON_URI='http://172.21.0.1'