first commit
This commit is contained in:
commit
1de65843b0
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
include.conf
|
||||||
|
config.env
|
56
Dockerfile
Normal file
56
Dockerfile
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
FROM ubuntu:latest
|
||||||
|
|
||||||
|
ARG BUILD_SERVER_NAME="services.lame-network.local"
|
||||||
|
|
||||||
|
RUN apt -y update
|
||||||
|
|
||||||
|
RUN apt -y install coreutils cmake perl git automake autoconf build-essential libpcre2-dev rapidjson-dev libcurl4-gnutls-dev libargon2-dev libmaxminddb-dev libldap2-dev rapidjson-dev libmysqlclient-dev libmysqlclient-dev default-libmysqlclient-dev libpq-dev libre2-dev gnutls-dev libsqlite3-dev libmbedtls-dev libqrencode-dev libpcre3-dev libtre-dev pkg-config libwww-perl libidn-dev libpasswdqc-dev libcrack2-dev libperl-dev libsodium-dev cracklib-runtime libcrypt-cracklib-perl sendmail
|
||||||
|
|
||||||
|
RUN groupadd anope
|
||||||
|
|
||||||
|
RUN useradd --system --shell /bin/bash anope -g anope
|
||||||
|
|
||||||
|
WORKDIR /tmp
|
||||||
|
|
||||||
|
RUN git clone https://github.com/anope/anope.git
|
||||||
|
|
||||||
|
WORKDIR /tmp/anope/modules
|
||||||
|
|
||||||
|
RUN ls -1 extra/*.cpp | xargs -i ln -s {}
|
||||||
|
|
||||||
|
WORKDIR /tmp/anope
|
||||||
|
|
||||||
|
RUN cmake -DINSTDIR:STRING=/usr/local -DRUNGROUP:STRING=anope -DDEFUMASK:STRING=007 -DCMAKE_BUILD_TYPE:STRING=RELEASE -B /tmp/anope/build /tmp/anope
|
||||||
|
|
||||||
|
WORKDIR /tmp/anope/build
|
||||||
|
|
||||||
|
RUN make -j$(nproc)
|
||||||
|
|
||||||
|
RUN make install
|
||||||
|
|
||||||
|
RUN mkdir -p /etc/anope -p /etc/ssl/anope -p /var/log/anope -p /var/lib/anope
|
||||||
|
|
||||||
|
ADD anope.conf /etc/anope
|
||||||
|
|
||||||
|
ADD include.default.conf /etc/anope/include.conf
|
||||||
|
|
||||||
|
RUN openssl genrsa -out /etc/ssl/anope/server.key
|
||||||
|
|
||||||
|
RUN openssl req -new -key /etc/ssl/anope/server.key -out /etc/ssl/anope/server.csr \
|
||||||
|
-subj "/C=US/ST=Washington/L=Seattle/O=LameNetwork/OU=IT Department/CN=$BUILD_SERVER_NAME"
|
||||||
|
|
||||||
|
RUN openssl x509 -req -days 365 -in /etc/ssl/anope/server.csr -signkey /etc/ssl/anope/server.key -out /etc/ssl/anope/server.crt
|
||||||
|
|
||||||
|
RUN chown -R anope:anope /etc/anope /etc/ssl/anope /var/log/anope /var/lib/anope
|
||||||
|
|
||||||
|
WORKDIR /
|
||||||
|
|
||||||
|
VOLUME /var/lib/anope
|
||||||
|
|
||||||
|
VOLUME /etc/ssl/anope
|
||||||
|
|
||||||
|
VOLUME /var/log/anope
|
||||||
|
|
||||||
|
USER anope
|
||||||
|
|
||||||
|
ENTRYPOINT ["/usr/local/bin/anope", "--nofork", "--config=/etc/anope/anope.conf", "--dbdir=/var/lib/anope", "--logdir=/var/log/anope", "--moduledir=/usr/local/modules"]
|
1534
anope.conf
Normal file
1534
anope.conf
Normal file
File diff suppressed because it is too large
Load Diff
1
config.env.example
Normal file
1
config.env.example
Normal file
@ -0,0 +1 @@
|
|||||||
|
SERVER_NAME="services.lame-network.local"
|
21
docker-compose.yml
Normal file
21
docker-compose.yml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
services:
|
||||||
|
anope:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
args:
|
||||||
|
BUILD_SERVER_NAME: ${SERVER_NAME}
|
||||||
|
image: anope
|
||||||
|
network_mode: "host"
|
||||||
|
env_file: "config.env"
|
||||||
|
volumes:
|
||||||
|
- data:/var/lib/anope
|
||||||
|
- ./include.conf:/etc/anope/include.conf:ro
|
||||||
|
- ssl:/etc/ssl/anope
|
||||||
|
- log:/var/log/anope
|
||||||
|
volumes:
|
||||||
|
data:
|
||||||
|
name: anope_data
|
||||||
|
ssl:
|
||||||
|
name: anope_ssl
|
||||||
|
log:
|
||||||
|
name: anope_log
|
97
include.default.conf
Normal file
97
include.default.conf
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
uplink
|
||||||
|
{
|
||||||
|
host = 127.0.0.1
|
||||||
|
protocol = "ipv4"
|
||||||
|
ssl = yes
|
||||||
|
port = "7000"
|
||||||
|
password = changeme
|
||||||
|
}
|
||||||
|
|
||||||
|
serverinfo
|
||||||
|
{
|
||||||
|
name = services.lame-network.local
|
||||||
|
description = "IRC Services"
|
||||||
|
localhost = 127.0.0.1
|
||||||
|
id = 10X
|
||||||
|
pid = "/tmp/anope.pid"
|
||||||
|
motd = "/etc/anope/motd.txt"
|
||||||
|
}
|
||||||
|
|
||||||
|
networkinfo
|
||||||
|
{
|
||||||
|
networkname = "NetcraveIRC"
|
||||||
|
nicklen = 31
|
||||||
|
userlen = 10
|
||||||
|
hostlen = 64
|
||||||
|
chanlen = 32
|
||||||
|
modelistsize = 256
|
||||||
|
nick_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
|
||||||
|
vhost_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-"
|
||||||
|
allow_undotted_vhosts = true
|
||||||
|
disallow_start_or_end = ".-"
|
||||||
|
}
|
||||||
|
|
||||||
|
mail
|
||||||
|
{
|
||||||
|
usemail = no
|
||||||
|
sendmailpath = "/usr/sbin/sendmail -it"
|
||||||
|
sendfrom = "no-reply@lame-network.local"
|
||||||
|
delay = 5m
|
||||||
|
dontquoteaddresses = no
|
||||||
|
content_type = "text/plain; charset=UTF-8"
|
||||||
|
registration_subject = "Nickname registration for %n"
|
||||||
|
registration_message = "Hi,
|
||||||
|
|
||||||
|
You have requested to register the nickname %n on %N.
|
||||||
|
Please type \" /msg NickServ CONFIRM %c \" to complete registration.
|
||||||
|
|
||||||
|
If you don't know why this mail was sent to you, please ignore it silently.
|
||||||
|
|
||||||
|
%N administrators."
|
||||||
|
|
||||||
|
reset_subject = "Reset password request for %n"
|
||||||
|
reset_message = "Hi,
|
||||||
|
|
||||||
|
You have requested to have the password for %n reset.
|
||||||
|
To reset your password, type \" /msg NickServ CONFIRM %n %c \"
|
||||||
|
|
||||||
|
If you don't know why this mail was sent to you, please ignore it silently.
|
||||||
|
|
||||||
|
%N administrators."
|
||||||
|
|
||||||
|
emailchange_subject = "Email confirmation"
|
||||||
|
emailchange_message = "Hi,
|
||||||
|
|
||||||
|
You have requested to change your email address from %e to %E.
|
||||||
|
Please type \" /msg NickServ CONFIRM %c \" to confirm this change.
|
||||||
|
|
||||||
|
If you don't know why this mail was sent to you, please ignore it silently.
|
||||||
|
|
||||||
|
%N administrators."
|
||||||
|
|
||||||
|
memo_subject = "New memo"
|
||||||
|
memo_message = "Hi %n,
|
||||||
|
|
||||||
|
You've just received a new memo from %s. This is memo number %d.
|
||||||
|
|
||||||
|
Memo text:
|
||||||
|
|
||||||
|
%t"
|
||||||
|
}
|
||||||
|
|
||||||
|
oper
|
||||||
|
{
|
||||||
|
name = "admin"
|
||||||
|
type = "Services Root"
|
||||||
|
require_oper = yes
|
||||||
|
}
|
||||||
|
|
||||||
|
module
|
||||||
|
{
|
||||||
|
name = "db_flatfile"
|
||||||
|
database = "/var/lib/anope/anope.db"
|
||||||
|
fork = no
|
||||||
|
nobackupokay = yes
|
||||||
|
keepbackups = 3
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user