add more images
This commit is contained in:
parent
3241a41ae6
commit
dbb5d933c5
180 changed files with 4993 additions and 999 deletions
26
bot/bastion/Dockerfile
Normal file
26
bot/bastion/Dockerfile
Normal file
|
@ -0,0 +1,26 @@
|
|||
FROM --platform=$TARGETOS/$TARGETARCH mongo:7-jammy
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
## install nodejs 20
|
||||
RUN apt update && apt install --no-install-recommends -y curl apt-transport-https ca-certificates gnupg \
|
||||
&& mkdir -p /usr/share/keyrings \
|
||||
&& curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /usr/share/keyrings/nodesource.gpg \
|
||||
&& echo "deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
|
||||
&& apt update && apt install -y nodejs \
|
||||
&& npm install -g npm@latest \
|
||||
## install bastion reqs
|
||||
&& apt install -y python3 build-essential git libtool netcat ffmpeg iproute2 tzdata tini \
|
||||
## add container user
|
||||
&& useradd -d /home/container -m container -s /bin/bash
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
42
bot/bastion/entrypoint.sh
Normal file
42
bot/bastion/entrypoint.sh
Normal file
|
@ -0,0 +1,42 @@
|
|||
#!/bin/bash
|
||||
#Variables
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
clear
|
||||
#show versions
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
echo -e "${YELLOW}BastionBot Installation${NC}"
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
echo -e "${YELLOW}MongoDB Version:${NC} " && mongod --version
|
||||
echo -e "${YELLOW}NodeJS Version:${NC} " && node -v
|
||||
echo -e "${YELLOW}Python Version:${NC} " && python3 --version
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
|
||||
cd /home/container
|
||||
|
||||
# Set environment variable that holds the Internal Docker IP
|
||||
INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}')
|
||||
export INTERNAL_IP
|
||||
|
||||
# Replace Startup Variables
|
||||
MODIFIED_STARTUP=$(echo -e $(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g'))
|
||||
echo -e "${YELLOW}:/home/container${NC} ${MODIFIED_STARTUP}"
|
||||
|
||||
# start mongo
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
echo -e "${YELLOW}starting MongoDB...${NC}"
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
mongod --fork --dbpath /home/container/mongodb/ --port 27017 --logpath /home/container/mongod.log --logRotate reopen --logappend && until nc -z -v -w5 127.0.0.1 27017; do echo 'Waiting for mongodb connection...'; sleep 5; done
|
||||
|
||||
# Run the Server
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
echo -e "${YELLOW}BastionBot starting...${NC}"
|
||||
echo -e "${BLUE}-------------------------------------------------${NC}"
|
||||
eval ${MODIFIED_STARTUP}
|
||||
|
||||
# stop mongo
|
||||
mongod --eval "db.adminCommand({ "shutdown" : 1 })"
|
Loading…
Add table
Add a link
Reference in a new issue