浏览代码

nuc docker first add

Mauro 1 年之前
当前提交
dd5e8648c7

+ 0 - 0
README.md


+ 77 - 0
docker-compose.yml

@@ -0,0 +1,77 @@
+services:
+  mariadb:
+    image: local/mariadb
+    build: 
+      dockerfile: ./mariadb/mariadb.yml
+    volumes:
+      - mariadb-data:/var/lib/mysql
+    restart: unless-stopped
+    ports:
+      - 3306:3306
+    entrypoint: ['bin/bash','/root/mariadb.sh']
+    environment:
+      MARIADB_PASSWORD: "PassworD"
+
+  setup:
+    image: local/setup
+    build:
+      dockerfile: ./setup/setup.yml
+    volumes:
+      - /mnt/Data/Volumes/Shared-data:/home/shared-data
+    entrypoint: ['bin/bash','/root/setup.sh']
+    restart: unless-stopped 
+
+  gogs:
+    image: local/gogs
+    build: 
+      dockerfile: ./gogs/gogs.yml
+    volumes:
+      - gogs-data:/home/gogs
+    restart: unless-stopped
+    ports:
+      - 3000:3000
+    entrypoint: ['bin/bash','/root/gogs.sh']
+
+  password:
+    image: local/password
+    build: 
+      dockerfile: ./password/password.yml
+    volumes:
+      - password-data:/home/password
+    restart: unless-stopped
+    ports:
+      - 3020:3020
+    entrypoint: ['bin/bash','/root/password.sh']
+    environment:
+      PASSWORDWEB_PORT: 3020
+
+
+volumes:
+  mariadb-data:
+    driver: local
+    driver_opts:
+      device: /mnt/Data/Volumes/MariaDb/var/lib/mysql
+      type: local
+      o: bind
+
+  gogs-data:
+    driver: local
+    driver_opts:
+      device: /mnt/Data/Volumes/Gogs
+      type: local
+      o: bind
+
+  shared-data:
+    driver: local
+    driver_opts:
+      device: /mnt/Data/Volumes/Shared-data
+      type: local
+      o: bind
+
+  password-data:
+    driver: local
+    driver_opts:
+      device: /mnt/Data/Volumes/Password
+      type: local
+      o: bind
+

+ 12 - 0
docker/d.sh

@@ -0,0 +1,12 @@
+docker stop home-assistant
+docker container prune 
+docker image remove ghcr.io/home-assistant/home-assistant:stable
+docker run -itd \
+  --name home-assistant \
+  --privileged \
+  --restart=unless-stopped \
+  -e TZ=Europe/Rome \
+  -v /home/homeassistant:/config \
+  -v /run/dbus:/run/dbus:ro \
+  --network=host \
+  ghcr.io/home-assistant/home-assistant:stable

+ 4 - 0
docker/docker_ftp

@@ -0,0 +1,4 @@
+docker run -itd --name proftpd -p 21:21 -v /home/proftpd:/home/proftpd proftpd:latest /usr/sbin/proftpd -c /etc/proftpd/proftpd.conf -n
+
+ 
+

+ 2 - 0
docker/docker_home_assistant

@@ -0,0 +1,2 @@
+docker run -d --name home -p 8123:8123 --restart=unless-stopped -e TZ=Europe/Rome -v /home/home-assistant:/config ghcr.io/home-assistant/home-assistant:stable
+

+ 2 - 0
docker/docker_mosquitto

@@ -0,0 +1,2 @@
+docker run -itd --name mosquitto -p 1883:1883 -v /home/etc/mosquitto:/etc/mosquitto mosquitto su -s /bin/sh mosquitto -c "/usr/sbin/mosquitto -v -c /etc/mosquitto/mosquitto.conf "
+

+ 2 - 0
docker/docker_mosquitto_shell

@@ -0,0 +1,2 @@
+docker run -itd --name mosquitto -p 1883:1883 -v /home/mosquitto:/etc/mosquitto mosquitto /bin/bash
+

+ 2 - 0
docker/docker_mqtt

@@ -0,0 +1,2 @@
+docker run -itd --name mqtt -p 1883:1883 -v /home/mosquitto:/etc/mosquitto mqtt:stable su -s /bin/sh mosquitto -c "/usr/sbin/mosquitto -v -c /etc/mosquitto/mosquitto.conf "
+

+ 3 - 0
docker/docker_mqtt_test

@@ -0,0 +1,3 @@
+docker run -itd --name mqtt_test -p 18830:1883 -v /home/mosquitto:/etc/mosquitto mqtt:latest /bin/bash
+
+

+ 2 - 0
docker/docker_proftpd

@@ -0,0 +1,2 @@
+docker run -itd --name proftpd -v /home/fronius:/home/fronius -v /home/etc/proftpd:/etc/proftpd -p 21:21 -p 20:20 -p 50000-50010:50000-50010  proftpd /usr/sbin/proftpd -n -c /etc/proftpd/proftpd.conf
+

+ 2 - 0
docker/docker_synchthing

@@ -0,0 +1,2 @@
+docker run -itd --name syncthing -v /mnt/Data:/mnt/Data -v /home:/home -p 8384:8384 syncthing su -s /bin/sh mauro -c /usr/bin/syncthing
+

+ 8 - 0
gogs/gogs.sh

@@ -0,0 +1,8 @@
+#!/bin/bash
+cd /home/gogs
+echo "posizione $(pwd)"
+chown gogs:gogs -R /home/gogs
+chmod a+x /home/gogs/gogs
+echo "Running gogs"
+su gogs -s /bin/bash -c "./gogs web"
+

+ 11 - 0
gogs/gogs.yml

@@ -0,0 +1,11 @@
+FROM alpine:latest
+RUN apk add bash
+RUN apk add git
+RUN apk add shadow
+run apk add gcompat
+COPY gogs/gogs.sh /root
+RUN groupadd gogs
+RUN useradd -g gogs -s /bin/false -d /home/gogs gogs
+RUN chmod a+x /root/gogs.sh
+CMD ['/bin/bash','/root/gogs.sh']
+

+ 3 - 0
mariadb/mariadb-setup.conf

@@ -0,0 +1,3 @@
+GRANT ALL PRIVILEGES on *.* to 'root'@'%' IDENTIFIED by "PASSWORD";
+flush privileges;
+

+ 11 - 0
mariadb/mariadb.conf

@@ -0,0 +1,11 @@
+[mysqld]
+user                    = mysql
+pid-file                = /run/mysqld/mysqld.pid
+basedir                 = /usr
+datadir                 = /var/lib/mysql
+tmpdir                  = /tmp
+lc-messages-dir         = /usr/share/mysql
+lc-messages             = en_US
+skip-external-locking
+bind-address            = 0.0.0.0
+

+ 20 - 0
mariadb/mariadb.sh

@@ -0,0 +1,20 @@
+#!/bin/bash
+cat /root/mariadb.conf > /etc//my.cnf
+chown -Rv mysql:mysql /var/lib/mysql
+mkdir -p /run/mysqld
+chown -Rv mysql:mysql /run/mysqld
+echo "Run install_db"
+mysql_install_db --datadir=/var/lib/mysql
+echo "Run mariadbd"
+mariadbd &
+echo "Sleep"
+sleep 5
+echo "Running config"
+cat /root/mariadb-setup.conf | sed -e "s/PASSWORD/${MARIADB_PASSWORD}/g"
+cat /root/mariadb-setup.conf | sed -e "s/PASSWORD/${MARIADB_PASSWORD}/g" | mariadb -h localhost
+echo "Running ...."
+touch /tmp/nulfile.txt
+tail -f /tmp/nulfile.txt
+
+
+

+ 10 - 0
mariadb/mariadb.yml

@@ -0,0 +1,10 @@
+FROM alpine:latest
+RUN apk add mariadb
+RUN apk add mariadb-client
+RUN apk add bash
+COPY mariadb/mariadb.sh /root
+COPY mariadb/mariadb.conf /root
+COPY mariadb/mariadb-setup.conf /root
+RUN chmod a+x /root/mariadb.sh
+CMD ['/bin/bash','/root/mariadb.sh']
+

+ 7 - 0
mariadb/run.sh

@@ -0,0 +1,7 @@
+docker build -t myalpine . 
+docker run -itd --name sql \
+  -v /mnt/Data/Volumes/MariaDb/var/lib/mysql:/var/lib/mysql \
+  myalpine /bin/bash
+docker attach sql
+docker  container prune -f
+

+ 7 - 0
password/password.sh

@@ -0,0 +1,7 @@
+#!/bin/bash
+cd /home/password/PasswordWeb
+echo "posizione $(pwd)"
+chmod a+x /home/password/PasswordWeb/password
+echo "Running password"
+/home/password/PasswordWeb/password /home/password/PasswordFiles ${PASSWORDWEB_PORT}
+

+ 7 - 0
password/password.yml

@@ -0,0 +1,7 @@
+FROM alpine:latest
+RUN apk add bash
+run apk add gcompat
+COPY password/password.sh /root
+RUN chmod a+x /root/password.sh
+CMD ['/bin/bash','/root/password.sh']
+

+ 4 - 0
setup/setup.sh

@@ -0,0 +1,4 @@
+#!/bin/bash
+echo "Running"
+touch /var/log/ilniente
+tail -f /var/log/ilniente

+ 6 - 0
setup/setup.yml

@@ -0,0 +1,6 @@
+FROM alpine:latest
+RUN apk add mariadb-client
+RUN apk add bash
+COPY setup/setup.sh /root
+RUN chmod a+x /root/setup.sh
+CMD ['/bin/bash','/root/setup.sh']