Updated scripts with learning from install
This commit is contained in:
parent
8cf5193388
commit
653991b616
4 changed files with 70 additions and 30 deletions
|
|
@ -1,26 +1,39 @@
|
|||
#!/bin/bash
|
||||
|
||||
## Define admin user account
|
||||
if [ -z "$ADMIN_ACCOUNT"]
|
||||
then
|
||||
ADMIN_ACCOUNT=root
|
||||
fi
|
||||
su - ${ADMIN_ACCOUNT}
|
||||
|
||||
## Define bulk storage location
|
||||
if [ -z "$ZFS_DIR" ]
|
||||
then
|
||||
ZFS_DIR=/data
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_ACCOUNT"]
|
||||
then
|
||||
ADMIN_ACCOUNT=root
|
||||
fi
|
||||
su ${ADMIN_ACCOUNT}
|
||||
|
||||
echo "Installing GitLab ..."
|
||||
GITLAB_HOME=${ZFS_DIR}/gitlab
|
||||
|
||||
GITLAB_ADDRESS=gitlab.adamhome.dev
|
||||
GITLAB_ADDRESS=https://gitlab.adamhome.dev
|
||||
GITLAB_EXTERN_HTTPS=14443
|
||||
GITLAB_EXTERN_HTTP=14080
|
||||
GITLAB_EXTERN_SSH=14022
|
||||
GITLAB_EXTERN_SSH=22
|
||||
|
||||
if [ "${GITLAB_EXTERN_SSH}" -eq 22 ]
|
||||
then
|
||||
awk '{sub("#PORT=22","PORT=22")} {print}' /etc/ssh/sshd_config > /tmp/temp.txt && mv /tmp/temp.txt /etc/ssh/sshd_config
|
||||
awk '{sub("# PORT=22","PORT=22")} {print}' /etc/ssh/sshd_config > /tmp/temp.txt && mv /tmp/temp.txt /etc/ssh/sshd_config
|
||||
awk -v port=2222 '{sub("PORT=22","PORT="2222)} {print}' /etc/ssh/sshd_config > /tmp/temp.txt && mv /tmp/temp.txt /etc/ssh/sshd_config
|
||||
sudo systemctl reload sshd
|
||||
fi
|
||||
|
||||
sudo docker run --detach \
|
||||
--hostname ${GITLAB_ADDRESS} \
|
||||
--publish ${GITLAB_EXTERN_HTTPS}:443 --publish ${GITLAB_EXTERN_HTTP}:80 --publish ${GITLAB_EXTERN_SSH}:22 \
|
||||
--publish ${GITLAB_EXTERN_HTTPS}:443 \
|
||||
--publish ${GITLAB_EXTERN_HTTP}:80 \
|
||||
--publish ${GITLAB_EXTERN_SSH}:22 \
|
||||
--name gitlab \
|
||||
--restart always \
|
||||
--volume ${GITLAB_HOME}/config:/etc/gitlab \
|
||||
|
|
@ -34,10 +47,12 @@ sudo docker run --detach \
|
|||
|
||||
# sudo docker exec -it gitlab /bin/bash
|
||||
# edit /etc/gitlab/gitlab.rb so that gitlab_rails['gitlab_shell_ssh_port'] = ${GITLAB_EXTERN_SSH}
|
||||
# edit /etc/gitlab/gitlab.rb extern_url "https://${GITLAB_ADDRESS}"
|
||||
# while still in gitlab env, run gitlab-ctl reconfigure
|
||||
|
||||
sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
|
||||
|
||||
echo "Successfully installed GitLab"
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
#!/bin/bash
|
||||
|
||||
## Define admin user account
|
||||
export ADMIN_ACCOUNT=sys-admin
|
||||
if [ -z "$ADMIN_ACCOUNT"]
|
||||
then
|
||||
ADMIN_ACCOUNT=root
|
||||
fi
|
||||
su - ${ADMIN_ACCOUNT}
|
||||
|
||||
## Define bulk storage location
|
||||
if [ -z "$ZFS_DIR" ]
|
||||
|
|
@ -14,6 +18,7 @@ awk '{sub("#HOME=/home","HOME=/home")} {print}' /etc/default/useradd > /tmp/temp
|
|||
awk '{sub("# HOME=/home","HOME=/home")} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd
|
||||
awk -v dir=${ZFS_DIR}/home '{sub("HOME=/home","HOME="dir)} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd
|
||||
|
||||
echo "Installing JupyterHub ..."
|
||||
# export TLJH_INSTALL_PREFIX=${ZFS_DIR}/tljh
|
||||
export TLJH_INSTALL_PREFIX=${ZFS_DIR}/jupyter
|
||||
|
||||
|
|
@ -59,10 +64,13 @@ sudo -E python3 - \
|
|||
## Edit Jupyter Environment
|
||||
sudo tljh-config set http.port ${JUPYTER_EXTERN_HTTP}
|
||||
sudo tljh-config set https.port ${JUPYTER_EXTERN_HTTPS}
|
||||
sudo tljh-config set https.enabled true
|
||||
sudo tljh-config set https.tls.key /etc/letsencrypt/live/jupyter.adamhome.dev/privkey.pem
|
||||
sudo tljh-config set https.tls.cert /etc/letsencrypt/live/jupyter.adamhome.dev/fullchain.pem
|
||||
sudo tljh-config set limits.memory ${SYS_MEM}K
|
||||
sudo tljh-config set limits.cpu ${SYS_CPU}
|
||||
# sudo tljh-config set user_environment.default_app jupyterlab
|
||||
sudo tljh-config reload proxy
|
||||
sudo tljh-config reload
|
||||
|
||||
|
||||
echo "Successfully installed JupyterHub"
|
||||
|
|
@ -1,16 +1,31 @@
|
|||
#!/bin/bash
|
||||
|
||||
## Define admin user account
|
||||
if [ -z "$ADMIN_ACCOUNT"]
|
||||
then
|
||||
ADMIN_ACCOUNT=root
|
||||
fi
|
||||
su - ${ADMIN_ACCOUNT}
|
||||
|
||||
## Define bulk storage location
|
||||
if [ -z "$ZFS_DIR" ]
|
||||
then
|
||||
ZFS_DIR=/data
|
||||
fi
|
||||
|
||||
echo "Installing Nextcloud AIO ..."
|
||||
|
||||
if [ -z "$APACHE_COMM" ]
|
||||
then
|
||||
./create_reverse_proxy.sh
|
||||
fi
|
||||
|
||||
if [ SYS_MEM -gt 2097152 ]
|
||||
if [ -z "$SYS_MEM" ]
|
||||
then
|
||||
SYS_MEM=$(grep MemTotal /proc/meminfo | awk '{print $2}')
|
||||
fi
|
||||
|
||||
if [ $SYS_MEM -gt 2097152 ]
|
||||
then
|
||||
let "SYS_MEM = $SYS_MEM - 1048576"
|
||||
else
|
||||
|
|
@ -19,21 +34,23 @@ fi
|
|||
|
||||
echo "Installing Nextcloud AIO ..."
|
||||
let "AIO_MEM = $SYS_MEM / 1024"
|
||||
NEXTCLD_EXTERN_HTTP=12080
|
||||
NEXTCLD_EXTERN_HTTPS=12443
|
||||
APACHE_COMM=127.0.0.1
|
||||
APACHE_PORT=${NEXTCLD_EXTERN_HTTPS}
|
||||
|
||||
sudo docker run \
|
||||
--sig-proxy=false \
|
||||
--name nextcloud-aio-mastercontainer \
|
||||
--restart always \
|
||||
--publish 11080:80 \
|
||||
--publish 8080:8080 \
|
||||
--publish 11443:8443 \
|
||||
--env NEXTCLOUD_DATADIR=${ZFS_DIR}/nextcloud/data \
|
||||
--env NEXTCLOUD_MOUNT=${ZFS_DIR}/nextcloud \
|
||||
--env APACHE_PORT=${APACHE_PORT} \
|
||||
--env APACHE_IP_BINDING=${APACHE_COMM} \
|
||||
--env NEXTCLOUD_MEMORY_LIMIT=${AIO_MEM}M \
|
||||
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
|
||||
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
|
||||
nextcloud/all-in-one:latest
|
||||
sudo docker run -d \
|
||||
--sig-proxy=false \
|
||||
--name nextcloud-aio-mastercontainer \
|
||||
--restart always \
|
||||
--publish 8080:8080 \
|
||||
--env NEXTCLOUD_DATADIR=${ZFS_DIR}/nextcloud/data \
|
||||
--env NEXTCLOUD_MOUNT=${ZFS_DIR}/nextcloud \
|
||||
--env APACHE_PORT=${APACHE_PORT} \
|
||||
--env APACHE_IP_BINDING=${APACHE_COMM} \
|
||||
--env NEXTCLOUD_MEMORY_LIMIT=${AIO_MEM}M \
|
||||
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
|
||||
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
|
||||
nextcloud/all-in-one:latest
|
||||
|
||||
echo "Successfully installed Nextcloud AIO"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
apt update
|
||||
|
||||
## Setup ZFS
|
||||
ZFS_ROOT=/data
|
||||
ZFS_DIR=/data
|
||||
|
||||
## Debian Setup
|
||||
codename=$(lsb_release -cs);echo "deb http://deb.debian.org/debian $codename-backports main contrib non-free"|sudo tee -a /etc/apt/sources.list
|
||||
|
|
@ -12,8 +12,8 @@ apt install dpkg-dev linux-headers-generic linux-image-generic
|
|||
apt install zfs-dkms zfsutils-linux
|
||||
|
||||
## Create ZFS Pool
|
||||
mkdir -p ${ZFS_ROOT}
|
||||
zpool create -m ${ZFS_ROOT} tank raidz <disk1> <disk2> <disk3> ...
|
||||
mkdir -p ${ZFS_DIR}
|
||||
zpool create -m ${ZFS_DIR} tank raidz <disk1> <disk2> <disk3> ...
|
||||
|
||||
zfs create tank/gitlab
|
||||
zfs create tank/home
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue