diff --git a/README.md b/README.md index 8db9ddb..37c15ba 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,11 @@ # coreos -Contient les fichiers d'initialisation de CoreOS. \ No newline at end of file +Contient les fichiers d'initialisation de CoreOS. + +## Butane + +To convert yml in ignition file, use this command: + +```bash +$ file=borgwarehouse-pumbaa.gaia.ykn.local; bin/butane-x86_64-unknown-linux-gnu --output $file.ign $file.yml +``` diff --git a/bin/butane-x86_64-unknown-linux-gnu b/bin/butane-x86_64-unknown-linux-gnu new file mode 100755 index 0000000..7188dc8 Binary files /dev/null and b/bin/butane-x86_64-unknown-linux-gnu differ diff --git a/bin/ignition-validate-x86_64-linux b/bin/ignition-validate-x86_64-linux new file mode 100755 index 0000000..1db3fb0 Binary files /dev/null and b/bin/ignition-validate-x86_64-linux differ diff --git a/borgwarehouse-pumbaa.gaia.ykn.local.ign b/borgwarehouse-pumbaa.gaia.ykn.local.ign new file mode 100644 index 0000000..9b46c38 --- /dev/null +++ b/borgwarehouse-pumbaa.gaia.ykn.local.ign @@ -0,0 +1 @@ +{"ignition":{"version":"3.4.0"},"passwd":{"users":[{"name":"core","shouldExist":false},{"groups":["sudo"],"name":"alegall","passwordHash":"$y$j9T$61LMkIUWS6N.UQv3U4pxM1$Eodnc23AtXOvQMqm/qgqv7blGot4/8.OUsgIZazV9ND","sshAuthorizedKeys":["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHXrbcIwTQkJPlURJTePjQXAE4Q1lCjPp2JW/Y/oxXzp alegall@mufasa","ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP/JatXrf/HkF8HAnL5JmC05DHmUcgB7/eptDeD7kAP5 alegall@zazu","ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFI2/UosyrHbR3NVB8JDWbhNnmTLMS6EuCRG52hP50Vh alegall@smartphone","ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINwBIdvpiFgEzP2B+h3KIFmmxh1l7MVetGy2cThmpxcP alegall@sightcall"]},{"name":"borgwarehouse","uid":1001}]},"storage":{"directories":[{"overwrite":true,"path":"/srv/borgwarehouse"},{"overwrite":true,"path":"/srv/borgwarehouse/config"},{"overwrite":true,"path":"/srv/borgwarehouse/ssh"},{"overwrite":true,"path":"/srv/borgwarehouse/etc_ssh"},{"overwrite":true,"path":"/srv/borgwarehouse/repos"},{"overwrite":true,"path":"/srv/borgwarehouse/logs"},{"overwrite":true,"path":"/home/builder/.config"}],"files":[{"path":"/etc/hostname","contents":{"compression":"","source":"data:,borgwarehouse-pumbaa.gaia.ykn.local"},"mode":420},{"path":"/etc/vconsole.conf","contents":{"compression":"","source":"data:,KEYMAP%3Dfr"},"mode":420},{"path":"/etc/NetworkManager/system-connections/ens3.nmconnection","contents":{"compression":"gzip","source":"data:;base64,H4sIAAAAAAAC/3SPwW7DIAyG7zzLYCHtqiYVT1L14IIJaGAiMJvy9lOaw6RJO9r6/X+f77YQoeVY6CGiM0jtJHhb0SAHrIQsIjFWDxYlQcYjIe5x/To/BDhXsTVt9DQqfbkqrfTwPp7ffufx4yxcsKsMpfGr4Vnq8g0VQ+kN5drzE0AtEEFtn6RSsZCEo2b0dFJaD+qq1XTbN7IhVBvMn2xcqFSU0LnI/Y5rR5Fhkx5iMh5SQ5GRQ3EmA3VIh/7l0JcLkszFoXHooSd+sUcY/OztdZjn6fYP4ajcfxM/AQAA//8KiTIVRwEAAA=="},"mode":384},{"path":"/etc/containers/systemd/borgwarehouse.container","contents":{"compression":"gzip","source":"data:;base64,H4sIAAAAAAAC/3yUX2/yNhTG7/MpLHGzSXuThlfbClIm8SeFUEZYEtpVVRWZ5IS4JHZkn4Dop58cmk5poTcI/Jzn8fEPHz9vOMMXYwoqkaxCJrizFXJ3pBJyUSsglUhLykkiOFLGQRqPlKNyOOBRyP0PwQvGwUQqd4DGKEOQVzTjedJmvBgfX1e0hO6OhuGVdAdOKpI9SJMJqyN3fw0LiqDQMHpkLhSSSkgkJa0qxnfKcPmBScFL4Og8uuM4dIMHN4jXfhA5P29ubjoFYTjvFPR/vx20uZyWQChPySZYdkx3/0xX3fbN056bmexUrdx/o9EmmsebYOnkiJUaWtZFl9EjISQSElSXE0J3EriRs+hHJ1i8DaB+lY+3d5tO8STwVwt/HN+7T46a/Uy5bS/eTu6f+8H9q95h402HM29KylppWJjkBHMgtQLZHHInRV0Rb0pE1gi5JpuJIgWpmoLGuAXyF7E1xR7xMnISNTlSjgSFTiKUpCzLQALHczLmlOt6e6g/fmsMTZCEbc2KtNmK6b9eS1JBkZmdY228qaOtncVZu2j0yETwjO2aDlOK9KPlXw6iqEsgpag5ql+NHok+n6o9kThySMn29D+QI8NcE2tiNTVVQcIyBimhW3GALnl/defN4vUomjumlTT9fLlk76pS+Rdp7ofRWYp1ex197AezOHDXfuhFfvDUxkioRPeuRH+vWxHLqiMt/VnYaoXYKU1tOVqRDCjWEr5c7Xg5Wjn2oG/af9yatml/OzFNcf88Ng8NccdS8vBpfM9QhlYuyk+zbNGqapld9yuVXzSbmud1G2ASN1bAxPq+tCF6cY8z6+tOjfSi8cw6hKSWDE9LuoViyhTdFuCgrMEwnj2ukBbFS/O8Qjo+OWVdIPuh7+D7C0pSyGhdYPug/hcAAP//GfiPtrsFAAA="}}]}} diff --git a/borgwarehouse-pumbaa.gaia.ykn.local.yml b/borgwarehouse-pumbaa.gaia.ykn.local.yml new file mode 100644 index 0000000..e2a2b23 --- /dev/null +++ b/borgwarehouse-pumbaa.gaia.ykn.local.yml @@ -0,0 +1,131 @@ +--- + +variant: fcos +version: 1.5.0 +passwd: + users: + - name: core + should_exist: false + - name: alegall + password_hash: $y$j9T$61LMkIUWS6N.UQv3U4pxM1$Eodnc23AtXOvQMqm/qgqv7blGot4/8.OUsgIZazV9ND + groups: + - sudo + ssh_authorized_keys: + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHXrbcIwTQkJPlURJTePjQXAE4Q1lCjPp2JW/Y/oxXzp alegall@mufasa + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP/JatXrf/HkF8HAnL5JmC05DHmUcgB7/eptDeD7kAP5 alegall@zazu + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFI2/UosyrHbR3NVB8JDWbhNnmTLMS6EuCRG52hP50Vh alegall@smartphone + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINwBIdvpiFgEzP2B+h3KIFmmxh1l7MVetGy2cThmpxcP alegall@sightcall + - name: borgwarehouse + uid: 1001 + +storage: + directories: + - path: /srv/borgwarehouse + overwrite: true + + - path: /srv/borgwarehouse/config + overwrite: true + + - path: /srv/borgwarehouse/ssh + overwrite: true + + - path: /srv/borgwarehouse/etc_ssh + overwrite: true + + - path: /srv/borgwarehouse/repos + overwrite: true + + - path: /srv/borgwarehouse/logs + overwrite: true + + - path: /home/builder/.config + overwrite: true + + files: + - path: /etc/hostname + mode: 0644 + contents: + inline: borgwarehouse-pumbaa.gaia.ykn.local + + - path: /etc/vconsole.conf + mode: 0644 + contents: + inline: KEYMAP=fr + + - path: /etc/NetworkManager/system-connections/ens3.nmconnection + mode: 0600 + contents: + inline: | + [connection] + id=ens3 + type=ethernet + interface-name=ens3 + + [ipv4] + address1=192.168.1.10/24,192.168.1.254 + dhcp-hostname=borgwarehouse-pumbaa.gaia.ykn.local + dns=193.110.81.9; + dns-search=gaia.ykn.local + ignore-auto-dns=true + may-fail=false + method=manual + + [ipv6] + addr-gen-mode=default + dns=2a0f:fc80::9; + ignore-auto-dns=true + method=dhcp + + - path: /etc/containers/systemd/borgwarehouse.container + contents: + inline: | + [Unit] + Description=borgwarehouse podman container + Wants=network-online.target + After=network-online.target + + [Container] + ContainerName=borgwarehouse + + Image=docker.io/borgwarehouse/borgwarehouse:latest + + # Host port mappings + Environment=WEB_SERVER_PORT=3000 + Environment=SSH_SERVER_PORT=2589 + + # Hostname and URL + Environment=FQDN=borgwarehouse.ykn.fr + Environment=NEXTAUTH_URL=https://borgwarehouse.ykn.fr + + # Secrects + Environment=NEXTAUTH_SECRET=J2TyeJz9eujrW8FU + Environment=CRONJOB_KEY=sG3dn11JzyE7k9Kj + + # UID:GID must match the user and group ID of the host folders and must be > 1000 + # If you want to use a different user than 1001:1001, you must rebuild the image yourself. + Environment=UID=1001 + Environment=GID=1001 + + # Config and data folders (volume mounts) + # The host folders must be owned by the user with UID and GID specified above + Environment=CONFIG_PATH=./config + Environment=SSH_PATH=./ssh + Environment=SSH_HOST=./ssh_host + Environment=BORG_REPOSITORY_PATH=./repos + Environment=TMP_PATH=./tmp + Environment=LOGS_PATH=./logs + + # LAN feature + Environment=FQDN_LAN=192.168.1.10 + Environment=SSH_SERVER_PORT_LAN=22589 + + Volume=/srv/borgwarehouse/config:/home/borgwarehouse/app/config + Volume=/srv/borgwarehouse/ssh:/home/borgwarehouse/.ssh + Volume=/srv/borgwarehouse/etc_ssh:/etc/ssh + Volume=/srv/borgwarehouse/repos:/home/borgwarehouse/repos + Volume=/srv/borgwarehouse/logs:/home/borgwarehouse/logs + + SecurityLabelDisable=true + + [Install] + WantedBy=multi-user.target default.target