57 lines
2.0 KiB
Plaintext
57 lines
2.0 KiB
Plaintext
services:
|
|
nefarious:
|
|
image: ghcr.io/evilnet/nefarious2:latest
|
|
container_name: nefarious
|
|
restart: unless-stopped
|
|
ports:
|
|
- "6667:6667" # IRC (plaintext)
|
|
- "6697:6697" # IRC (SSL)
|
|
- "7000:7000" # IRC (plaintext)
|
|
- "4497:4497" # Server link (SSL)
|
|
- "9998:9998" # Services link (SSL)
|
|
environment:
|
|
IRCD_GENERAL_NAME: irc.example.com
|
|
IRCD_GENERAL_DESCRIPTION: "My IRC Server"
|
|
IRCD_GENERAL_NUMERIC: 1
|
|
IRCD_ADMIN_LOCATION: "New York, USA"
|
|
IRCD_ADMIN_CONTACT: "admin@example.com"
|
|
volumes:
|
|
# Persist SSL certificate
|
|
- ./ircd.pem:/home/nefarious/ircd/ircd.pem
|
|
# Custom configuration (optional)
|
|
- ./local.conf:/home/nefarious/ircd/local.conf
|
|
|
|
# Linesync Sidecar - Git-based configuration sync
|
|
# Uncomment to enable automatic config updates from a git repository
|
|
#
|
|
# Setup steps:
|
|
# 1. docker compose run --rm linesync keygen
|
|
# 2. Add the public key to your git repo's deploy keys
|
|
# 3. docker compose run --rm -e GIT_REPOSITORY=git@github.com:yourorg/linesync-data.git linesync setup
|
|
# 4. docker compose up -d
|
|
#
|
|
# linesync:
|
|
# image: ghcr.io/evilnet/nefarious2-linesync:latest
|
|
# # Or build locally:
|
|
# # build: ./tools/linesync
|
|
# container_name: linesync
|
|
# restart: unless-stopped
|
|
# depends_on:
|
|
# - nefarious
|
|
# volumes:
|
|
# # SSH keys directory
|
|
# - ./linesync-ssh:/home/linesync/.ssh
|
|
# # Config file - same bind mount as nefarious
|
|
# - ./local.conf:/home/linesync/ircd/local.conf
|
|
# # Linesync git repo directory (created by setup)
|
|
# - ./linesync:/home/linesync/ircd/linesync
|
|
# # Docker socket for sending SIGHUP to nefarious
|
|
# - /var/run/docker.sock:/var/run/docker.sock
|
|
# environment:
|
|
# NEFARIOUS_CONTAINER: nefarious
|
|
# SYNC_INTERVAL: 300
|
|
# IRCD_CONF: /home/linesync/ircd/local.conf
|
|
# # Optional: sync SSL certs from git tag
|
|
# # CERT_TAG: myserver-cert
|
|
|