kernel: image: nemunaire/kernel:4.9.77 cmdline: "console=tty0" init: - linuxkit/init:be8756f0a6005279d2409a8790b4dd8b2ac11df9 - linuxkit/runc:7b15b00b4e3507d62e3ed8d44dfe650561cd35ff - linuxkit/containerd:78706a05d00a7385ff2b6b7db280041338e4b34a - linuxkit/ca-certificates:de21b84d9b055ad9dcecc57965b654a7a24ef8e0 - linuxkit/getty:22e27189b6b354e1d5d38fc0536a5af3f2adb79f - nemunaire/mdadm:0ac2a0d3e7be84f1aad852c906d54cbff4d1668f onboot: - name: sysctl image: linuxkit/sysctl:4c1ef93bb5eb1a877318db4b2daa6768ed002e21 - name: sysctl image: linuxkit/sysctl:4c1ef93bb5eb1a877318db4b2daa6768ed002e21 command: ["/usr/bin/sysctl", "-w", "net.ipv6.conf.all.disable_ipv6=1"] # Filesystem - name: swap image: linuxkit/swap:b3d5db11b14168874a01b5ea4398186321be836f command: ["/sbin/swapon", "/dev/sda3", "/dev/sdb3"] - name: mount image: linuxkit/mount:b346ec277b7074e5c9986128a879c10a1d18742b command: ["/usr/bin/mountie", "-device", "/dev/md127", "/var/lib/fic" ] # Network # - name: dhcpcd # image: linuxkit/dhcpcd:0d59a6cc03412289ef4313f2491ec666c1715cc9 # command: ["/sbin/dhcpcd", "--nobackground", "-f", "/dhcpcd.conf", "-1"] # - name: ntp # image: linuxkit/openntpd:536e5947607c9e6a6771957c2ff817230cba0d3c - name: synchro-ip-setup image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/sh", "-c", "ip a add 10.10.10.1/29 dev eth0; ip link set eth0 up;" ] net: new runtime: interfaces: - name: eth0 bindNS: net: /run/netns/synchro - name: admin-ip-setup image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/sh", "-c", "ip a add 192.168.0.1/24 dev eth1; ip link set eth1 up; ip a add 172.17.0.2/24 dev vethin-admin; ip link set vethin-admin up;" ] net: new runtime: interfaces: - name: eth1 - name: vethin-admin add: veth peer: veth-admin bindNS: net: /run/netns/fic-admin - name: backend-ip-setup image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/sh", "-c", "ip a add 172.17.0.3/24 dev vethin-backend; ip link set vethin-backend up;" ] net: new runtime: interfaces: - name: vethin-backend add: veth peer: veth-backend bindNS: net: /run/netns/fic-backend - name: mysql-ip-setup image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/sh", "-c", "ip a add 172.17.0.4/24 dev vethin-db; ip link set vethin-db up;" ] net: new runtime: interfaces: - name: vethin-db add: veth peer: veth-db bindNS: net: /run/netns/db - name: bridge-setup image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/sh", "-c", "ip a add 172.17.0.1/24 dev br0; ip link set veth-admin master br0; ip link set veth-backend master br0; ip link set veth-db master br0; ip link set br0 up; ip link set veth-admin up; ip link set veth-backend up; ip link set veth-db up;" ] runtime: interfaces: - name: br0 add: bridge - name: firewall-synchro image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/bash", "-c", "/sbin/iptables-restore < /etc/iptables/rules-synchro.v4; /sbin/ip6tables-restore < /etc/iptables/rules.v6" ] binds: - /etc/iptables/rules-synchro.v4:/etc/iptables/rules-synchro.v4:ro - /etc/iptables/rules.v6:/etc/iptables/rules.v6:ro net: /run/netns/synchro runtime: mkdir: - /var/lib/fic/teams - name: firewall-admin image: linuxkit/ip:284c21791d8c05c49eccbd8e8cc2fb97bbd61842 command: ["/bin/bash", "-c", "/sbin/iptables-restore < /etc/iptables/rules-admin.v4; /sbin/ip6tables-restore < /etc/iptables/rules.v6" ] binds: - /etc/iptables/rules-admin.v4:/etc/iptables/rules-admin.v4:ro - /etc/iptables/rules.v6:/etc/iptables/rules.v6:ro net: /run/netns/fic-admin services: - name: rngd image: linuxkit/rngd:94e01a4b16fadb053455cdc2269c4eb0b39199cd - name: db image: mariadb:latest command: ["/bin/bash", "/usr/local/bin/docker-entrypoint.sh", "mysqld"] capabilities: - CAP_CHOWN - CAP_SETUID - CAP_SETGID - CAP_DAC_OVERRIDE env: - MYSQL_DATABASE=fic - MYSQL_USER=fic - MYSQL_PASSWORD=fic - MYSQL_RANDOM_ROOT_PASSWORD=yes binds: - /etc/hosts:/etc/hosts:ro - /var/lib/fic/mysql:/var/lib/mysql net: /run/netns/db pid: new ipc: new uts: new runtime: mkdir: - /var/lib/fic/mysql - name: fic-admin image: nemunaire/fic-admin:latest command: ["/srv/admin", "-bind=:8081", "-baseurl=/admin/", "-localimport=/mnt/fic"] env: - MYSQL_HOST=tcp(db:3306) - FICCA_PASS=jee8AhloAith1aesCeQu5ahgIegaeM4K binds: - /etc/hosts:/etc/hosts:ro - /var/lib/fic/files:/srv/FILES - /var/lib/fic/raw_files:/mnt/fic - /var/lib/fic/pki:/srv/PKI - /var/lib/fic/settings:/srv/SETTINGS - /var/lib/fic/teams:/srv/TEAMS net: /run/netns/fic-admin pid: new ipc: new uts: new runtime: mkdir: - /var/lib/fic/files - /var/lib/fic/raw_files - /var/lib/fic/pki - /var/lib/fic/settings - /var/lib/fic/teams - name: fic-backend image: nemunaire/fic-backend:latest env: - MYSQL_HOST=tcp(db:3306) binds: - /etc/hosts:/etc/hosts:ro - /var/lib/fic/settings:/srv/SETTINGS:ro - /var/lib/fic/submissions:/srv/submissions - /var/lib/fic/teams:/srv/TEAMS net: /run/netns/fic-backend pid: new ipc: new uts: new runtime: mkdir: - /var/lib/fic/settings - /var/lib/fic/submissions - /var/lib/fic/teams - name: fic-synchro image: nemunaire/rsync:f8a6d2b0b1064ea3cb3601a159bb886c47a76ce3 command: ["/bin/ash", "/root/synchro.sh"] binds: - /etc/hosts:/etc/hosts:ro - /root/.ssh/id_ed25519:/root/.ssh/id_ed25519:ro - /root/synchro.sh:/root/synchro.sh:ro - /var/lib/fic/files:/srv/FILES:ro - /var/lib/fic/pki/ca.key:/srv/PKI/ca.key:ro - /var/lib/fic/pki/shared:/srv/PKI/shared:ro - /var/lib/fic/settings:/srv/SETTINGS:ro - /var/lib/fic/submissions:/srv/submissions - /var/lib/fic/teams:/srv/TEAMS:ro net: /run/netns/synchro pid: new ipc: new uts: new runtime: mkdir: - /var/lib/fic/files - /var/lib/fic/pki/shared - /var/lib/fic/settings - /var/lib/fic/submissions - /var/lib/fic/teams - name: sshd image: nemunaire/rsync:f8a6d2b0b1064ea3cb3601a159bb886c47a76ce3 binds: - /etc/hosts:/etc/hosts:ro - /root/.ssh/authorized_keys:/root/.ssh/authorized_keys:ro - /var/lib/fic/outofsync:/var/lib/fic/outofsync net: /run/netns/fic-admin runtime: mkdir: - /var/lib/fic/outofsync files: - path: root/synchro.sh source: configs/synchro.sh mode: "0755" - path: etc/hosts source: configs/hosts mode: "0644" - path: root/.ssh/authorized_keys source: configs/authorized_keys mode: "0400" - path: root/.ssh/id_ed25519 source: configs/id_ed25519 mode: "0400" - path: etc/iptables/rules.v6 contents: | *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT DROP [0:0] COMMIT mode: "0440" - path: etc/iptables/rules-admin.v4 contents: | *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT DROP [0:0] [0:0] -A INPUT -i lo -j ACCEPT [0:0] -A INPUT -m conntrack --ctstate INVALID -j DROP [0:0] -A INPUT -p icmp -j ACCEPT [0:0] -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT [0:0] -A INPUT -i eth1 -s 192.168.0.0/24 -p tcp -m conntrack --ctstate NEW -m tcp --dport ssh -j ACCEPT [0:0] -A INPUT -p tcp -m conntrack --ctstate NEW -m tcp --dport 8081 -j ACCEPT [0:0] -A INPUT -i vethin-admin -s 172.17.0.0/24 -p tcp -m conntrack --ctstate NEW -j ACCEPT [0:0] -A INPUT -j LOG [0:0] -A FORWARD -j LOG [0:0] -A OUTPUT -o lo -j ACCEPT [0:0] -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT [0:0] -A OUTPUT -p icmp -j ACCEPT [0:0] -A OUTPUT -o vethin-admin -d 172.17.0.0/24 -p tcp -m conntrack --ctstate NEW -j ACCEPT [0:0] -A OUTPUT -j LOG [0:0] -A OUTPUT -j REJECT COMMIT mode: "0440" - path: etc/iptables/rules-synchro.v4 contents: | *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT DROP [0:0] [0:0] -A INPUT -i lo -j ACCEPT [0:0] -A INPUT -m conntrack --ctstate INVALID -j DROP [0:0] -A INPUT -p icmp --icmp-type 8 -j ACCEPT [0:0] -A INPUT -p icmp --icmp-type 0 -j ACCEPT [0:0] -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT [0:0] -A INPUT -j LOG [0:0] -A FORWARD -j LOG [0:0] -A OUTPUT -o lo -j ACCEPT [0:0] -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT [0:0] -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT [0:0] -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT [0:0] -A OUTPUT -o eth0 -d 10.10.10.2 -p tcp -m conntrack --ctstate NEW -m tcp --dport ssh -j ACCEPT [0:0] -A OUTPUT -j LOG [0:0] -A OUTPUT -j REJECT COMMIT mode: "0440" trust: org: - linuxkit - library