feat: add bot specific docker images
Migrates over docker images that are required to run specific bots
This commit is contained in:
19
bot/bastion/Dockerfile
Normal file
19
bot/bastion/Dockerfile
Normal file
@@ -0,0 +1,19 @@
|
||||
FROM node:14-buster
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
## install mongo
|
||||
RUN wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | apt-key add - \
|
||||
&& echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.2 main" | tee /etc/apt/sources.list.d/mongodb-org-4.2.list \
|
||||
&& apt update \
|
||||
&& apt install -y mongodb-org=4.2.7 mongodb-org-server=4.2.7 mongodb-org-shell=4.2.7 mongodb-org-mongos=4.2.7 mongodb-org-tools=4.2.7 \
|
||||
## install bastion reqs
|
||||
&& apt install -y python build-essential netcat ffmpeg \
|
||||
## add container user
|
||||
&& useradd -d /home/container -m container -s /bin/bash
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD ["/bin/bash", "/entrypoint.sh"]
|
12
bot/bastion/entrypoint.sh
Normal file
12
bot/bastion/entrypoint.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
cd /home/container
|
||||
|
||||
# Make internal Docker IP address available to processes.
|
||||
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
|
||||
|
||||
# Replace Startup Variables
|
||||
MODIFIED_STARTUP=$(echo -e $(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g'))
|
||||
echo -e ":/home/container$ ${MODIFIED_STARTUP}"
|
||||
|
||||
# Run the Server
|
||||
eval ${MODIFIED_STARTUP}
|
13
bot/parkertron/Dockerfile
Normal file
13
bot/parkertron/Dockerfile
Normal file
@@ -0,0 +1,13 @@
|
||||
FROM alpine:3.9
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
RUN apk add --update --no-cache git curl lua-stdlib lua musl-dev g++ libc-dev tesseract-ocr tesseract-ocr-dev \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD ["/bin/ash", "/entrypoint.sh"]
|
12
bot/parkertron/entrypoint.sh
Normal file
12
bot/parkertron/entrypoint.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/ash
|
||||
cd /home/container
|
||||
|
||||
# Make internal Docker IP address available to processes.
|
||||
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
|
||||
|
||||
# Replace Startup Variables
|
||||
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
|
||||
echo ":/home/container$ ${MODIFIED_STARTUP}"
|
||||
|
||||
# Run the Server
|
||||
eval ${MODIFIED_STARTUP}
|
19
bot/red/Dockerfile
Normal file
19
bot/red/Dockerfile
Normal file
@@ -0,0 +1,19 @@
|
||||
FROM python:3.8-slim
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
RUN mkdir -p /usr/share/man/man1 \
|
||||
&& apt update \
|
||||
&& apt -y install git ca-certificates dnsutils iproute2 wget curl xz-utils git openjdk-11-jre \
|
||||
zlib1g-dev libffi-dev git libmagickwand-dev unzip libaa1-dev build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev ffmpeg imagemagick \
|
||||
&& pip install python-forecastio tweepy unidecode discord-text-sanitizer mcstatus bs4 sqlalchemy geocoder valve python-valve py-cpuinfo psutil \
|
||||
&& useradd -m -d /home/container container \
|
||||
&& mkdir -p /home/container/.config/Red-DiscordBot/ \
|
||||
&& ln -s /home/container/.config/Red-DiscordBot/ /usr/local/share/Red-DiscordBot
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD ["/bin/bash", "/entrypoint.sh"]
|
12
bot/red/entrypoint.sh
Normal file
12
bot/red/entrypoint.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
cd /home/container
|
||||
|
||||
# Make internal Docker IP address available to processes.
|
||||
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
|
||||
|
||||
# Replace Startup Variables
|
||||
MODIFIED_STARTUP=$(echo -e $(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g'))
|
||||
echo -e ":/home/container$ ${MODIFIED_STARTUP}"
|
||||
|
||||
# Run the Server
|
||||
eval ${MODIFIED_STARTUP}
|
21
bot/sinusbot/Dockerfile
Normal file
21
bot/sinusbot/Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
FROM ubuntu:18.04
|
||||
|
||||
LABEL maintainer="ki2007 <ki2007@damw.eu>" version="1.0"
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
# Install Dependencies
|
||||
RUN apt update \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y ca-certificates less libasound2 libegl1-mesa libglib2.0-0 libnss3 libpci3 libpulse0 libxcursor1 libxslt1.1 libx11-xcb1 libxkbcommon0 locales pulseaudio python sudo x11vnc x11-xkb-utils xvfb iproute2 \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
ENV LANG C.UTF-8
|
||||
ENV LC_ALL C.UTF-8
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD ["/bin/bash", "/entrypoint.sh"]
|
12
bot/sinusbot/entrypoint.sh
Normal file
12
bot/sinusbot/entrypoint.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
cd /home/container
|
||||
|
||||
# Make internal Docker IP address available to processes.
|
||||
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
|
||||
|
||||
# Replace Startup Variables
|
||||
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
|
||||
echo ":/home/container$ ${MODIFIED_STARTUP}"
|
||||
|
||||
# Run the Server
|
||||
eval ${MODIFIED_STARTUP}
|
Reference in New Issue
Block a user