Compare commits
6 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
fd547267b7 | ||
|
5cece69746 | ||
|
18bfc8afd5 | ||
|
28e2b415ba | ||
|
bdf690fd89 | ||
|
1769f92719 |
@ -1,3 +1,4 @@
|
|||||||
cleaninstall/
|
cleaninstall/
|
||||||
.git/
|
.git/
|
||||||
Makefile
|
Makefile
|
||||||
|
devel/
|
||||||
|
@ -13,6 +13,7 @@ services:
|
|||||||
- docker:dind
|
- docker:dind
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
|
- apk add curl
|
||||||
- docker info
|
- docker info
|
||||||
- docker version
|
- docker version
|
||||||
- echo "$CI_JOB_TOKEN" | docker login -u "$CI_REGISTRY_USER" "$CI_REGISTRY" --password-stdin
|
- echo "$CI_JOB_TOKEN" | docker login -u "$CI_REGISTRY_USER" "$CI_REGISTRY" --password-stdin
|
||||||
@ -25,7 +26,7 @@ test:
|
|||||||
- docker build -t ${CI_REGISTRY_IMAGE}:${VERSION} .
|
- docker build -t ${CI_REGISTRY_IMAGE}:${VERSION} .
|
||||||
- docker images
|
- docker images
|
||||||
tags:
|
tags:
|
||||||
- docker-armv7l
|
- docker
|
||||||
only:
|
only:
|
||||||
- debug
|
- debug
|
||||||
|
|
||||||
@ -37,7 +38,8 @@ build:
|
|||||||
- docker build --cache-from ${CI_REGISTRY_IMAGE}:${CACHETAG} -t ${CI_REGISTRY_IMAGE}:${VERSION} -t ${CI_REGISTRY_IMAGE}:${CACHETAG} .
|
- docker build --cache-from ${CI_REGISTRY_IMAGE}:${CACHETAG} -t ${CI_REGISTRY_IMAGE}:${VERSION} -t ${CI_REGISTRY_IMAGE}:${CACHETAG} .
|
||||||
- docker push ${CI_REGISTRY_IMAGE}:${VERSION}
|
- docker push ${CI_REGISTRY_IMAGE}:${VERSION}
|
||||||
- docker push ${CI_REGISTRY_IMAGE}:${CACHETAG}
|
- docker push ${CI_REGISTRY_IMAGE}:${CACHETAG}
|
||||||
|
- if [ -n "${TRIGGER_PIPELINE}" ]; then curl -sSX POST -F token=${TRIGGER_PIPELINE} -F ref=x86_64-extras http://dev.leenooks.net/api/v4/projects/45/trigger/pipeline > /dev/null; fi
|
||||||
tags:
|
tags:
|
||||||
- docker-armv7l
|
- docker
|
||||||
only:
|
only:
|
||||||
- armv7l
|
- x86_64
|
||||||
|
20
Dockerfile
20
Dockerfile
@ -1,19 +1,23 @@
|
|||||||
# NAME leenooks/mysticbbs
|
# NAME leenooks/mysticbbs
|
||||||
# VERSION 1.12a39-armv7l
|
# VERSION 1.12a39-x86_64
|
||||||
|
|
||||||
FROM arm32v7/debian:jessie-slim
|
FROM debian:stretch-slim
|
||||||
|
|
||||||
MAINTAINER Deon George <deon@leenooks.net>
|
MAINTAINER Deon George <deon@leenooks.net>
|
||||||
|
|
||||||
# Pre-requisites
|
# Pre-requisites
|
||||||
|
# + Base application requires unzip zip curl libhunspell-dev libpython2.7
|
||||||
RUN apt-get update \
|
RUN apt-get update \
|
||||||
&& apt-get install -yqq unzip zip curl libhunspell-dev \
|
&& apt-get install -yqq unzip zip curl libhunspell-dev libpython2.7 \
|
||||||
&& rm -rf /var/lib/apt/lists/* /tmp/*
|
&& rm -rf /var/lib/apt/lists/* /tmp/*
|
||||||
|
|
||||||
# For SSH connections and Spell
|
# Add in Leenooks' apt repository
|
||||||
ADD libcl.so.3.4.3 /usr/lib
|
RUN curl -s http://apt.leenooks.net/setup.sh | sh
|
||||||
RUN ln -sf libcl.so.3.4.3 /usr/lib/libcl.so
|
|
||||||
RUN ln -sf /usr/lib/arm-linux-gnueabihf/libhunspell-1.3.so.0 /usr/lib/libhunspell.so
|
# For SSH connections
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install --allow-unauthenticated -yqq cryptlib \
|
||||||
|
&& rm -rf /var/lib/apt/lists/* /tmp/*
|
||||||
|
|
||||||
RUN ln -sf /usr/share/zoneinfo/Australia/Melbourne /etc/localtime
|
RUN ln -sf /usr/share/zoneinfo/Australia/Melbourne /etc/localtime
|
||||||
|
|
||||||
@ -27,5 +31,3 @@ CMD [ "start" ]
|
|||||||
|
|
||||||
ADD mystic.tar.gz /
|
ADD mystic.tar.gz /
|
||||||
VOLUME ["/mystic/data"]
|
VOLUME ["/mystic/data"]
|
||||||
|
|
||||||
# Add Mystic Mods
|
|
||||||
|
@ -19,7 +19,7 @@ To use this container:
|
|||||||
|
|
||||||
1. Docker pull it from my registry. (Actually you can skip this step, but its worth doing it anyway!)
|
1. Docker pull it from my registry. (Actually you can skip this step, but its worth doing it anyway!)
|
||||||
|
|
||||||
docker pull registry.leenooks.net/leenooks/mysticbbs:1.12a39-armv7l
|
docker pull registry.leenooks.net/leenooks/mysticbbs:1.12a39-x86_64
|
||||||
|
|
||||||
2. Create a directory to hold your BBS data. (I use */srv/docker/mystic*).
|
2. Create a directory to hold your BBS data. (I use */srv/docker/mystic*).
|
||||||
|
|
||||||
@ -27,7 +27,7 @@ To use this container:
|
|||||||
|
|
||||||
3. Start the container.
|
3. Start the container.
|
||||||
|
|
||||||
docker run -itd -v /srv/mystic/data:/mystic/data -p 10022:22 -p 10023:23 -p 24554:24554 registry.leenooks.net/leenooks/mysticbbs:1.12a39-armv7l
|
docker run -itd -v /srv/mystic/data:/mystic/data -p 10022:22 -p 10023:23 -p 24554:24554 registry.leenooks.net/leenooks/mysticbbs:1.12a39-x86_64
|
||||||
|
|
||||||
Explanation of these parameters:
|
Explanation of these parameters:
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ To use this container:
|
|||||||
| :- | :-- |
|
| :- | :-- |
|
||||||
| -d | Detached mode: run the container in the background and print the new container ID. |
|
| -d | Detached mode: run the container in the background and print the new container ID. |
|
||||||
| -i | Keep STDIN open even if not attached. (required) |
|
| -i | Keep STDIN open even if not attached. (required) |
|
||||||
| -n | Give your container a specific name. (optional) |
|
| --name= | Give your container a specific name. (optional) |
|
||||||
| -p | Map host ports to container ports. (may be required, otherwise recommended) |
|
| -p | Map host ports to container ports. (may be required, otherwise recommended) |
|
||||||
| -t | Allocate a pseudo-TTY. (required) |
|
| -t | Allocate a pseudo-TTY. (required) |
|
||||||
| -v | Map a path on the host into the container (optional but recommended). |
|
| -v | Map a path on the host into the container (optional but recommended). |
|
||||||
@ -64,4 +64,4 @@ You can also run this in a swarm (I do)!
|
|||||||
|
|
||||||
----
|
----
|
||||||
## Extras Container
|
## Extras Container
|
||||||
There is an "extras" container with some additional MysticBBS mods pre-installed. You'll find info on that in the [armv7l-extras](https://dev.leenooks.net/leenooks/mysticbbs/blob/armv7l-extras/README.md) branch.
|
There is an "extras" container with some additional MysticBBS mods pre-installed. You'll find info on that in the [x86_64-extras](https://dev.leenooks.net/leenooks/mysticbbs/blob/x86_64-extras/README.md#info-on-the-images) branch.
|
||||||
|
1
cleaninstall/.gitignore
vendored
1
cleaninstall/.gitignore
vendored
@ -2,3 +2,4 @@ data
|
|||||||
mystic
|
mystic
|
||||||
mods
|
mods
|
||||||
*.zip
|
*.zip
|
||||||
|
*.rar
|
||||||
|
@ -2,20 +2,20 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
MYSTIC_SOURCE=${1:-mys112a39_pi.zip}
|
MYSTIC_SOURCE=${1:-mys112a39_l64.rar}
|
||||||
[ "$1" ] && shift
|
[ "$1" ] && shift
|
||||||
SPELL_SOURCE=${1:-mystic_spellcheck_v2.zip}
|
SPELL_SOURCE=${1:-mystic_spellcheck_v2.zip}
|
||||||
[ "$1" ] && shift
|
[ "$1" ] && shift
|
||||||
|
|
||||||
CLEAN_INSTALL_DIR=x
|
CLEAN_INSTALL_DIR=x
|
||||||
INSTALL_CONTAINER=arm32v7/debian:jessie-slim
|
INSTALL_CONTAINER=debian:stretch-slim
|
||||||
TARGET_DIR=mystic
|
TARGET_DIR=mystic
|
||||||
PATCH_FILE=mystic.112a39.patch
|
PATCH_FILE=mystic.112a39.patch
|
||||||
|
|
||||||
[ $(id -u) -ne 0 ] && echo "ERROR: You need to run me as root." && exit 1
|
[ $(id -u) -ne 0 ] && echo "ERROR: You need to run me as root." && exit 1
|
||||||
|
|
||||||
if [ -d ${TARGET_DIR} ]; then
|
if [ -d ${TARGET_DIR} ]; then
|
||||||
echo "! Skipping installation [$TARGET_DIR} already exists"
|
echo "! Skipping installation [${TARGET_DIR}] already exists"
|
||||||
|
|
||||||
else
|
else
|
||||||
# 1) Download Mystic App
|
# 1) Download Mystic App
|
||||||
@ -24,8 +24,8 @@ else
|
|||||||
# 2) Create a new directory for it and unzip the App into it
|
# 2) Create a new directory for it and unzip the App into it
|
||||||
[ -d ${CLEAN_INSTALL_DIR} ] && echo "ERROR: Directory [${CLEAN_INSTALL_DIR}] already exists!" && exit 1
|
[ -d ${CLEAN_INSTALL_DIR} ] && echo "ERROR: Directory [${CLEAN_INSTALL_DIR}] already exists!" && exit 1
|
||||||
|
|
||||||
unzip ${MYSTIC_SOURCE} -d ${CLEAN_INSTALL_DIR}
|
mkdir ${CLEAN_INSTALL_DIR}; cd ${CLEAN_INSTALL_DIR}; unrar x ../${MYSTIC_SOURCE}; cd ..
|
||||||
[ $? -gt 0 ] && echo "ERROR: Unzip failed?" && exit 1
|
[ $? -gt 0 ] && echo "ERROR: Unrar failed?" && exit 1
|
||||||
|
|
||||||
# 3) Run docker with -v mapping the unzip files to an arbitrary directory -v unzipfiles:/install
|
# 3) Run docker with -v mapping the unzip files to an arbitrary directory -v unzipfiles:/install
|
||||||
# ** @TODO Request upstream to default QWK and Echo DIRs to named dir as well during installation
|
# ** @TODO Request upstream to default QWK and Echo DIRs to named dir as well during installation
|
||||||
@ -74,5 +74,5 @@ echo "Zipping up data dir..."
|
|||||||
tar czf mystic/data.tar.gz data/
|
tar czf mystic/data.tar.gz data/
|
||||||
|
|
||||||
# That dir is now ready for the image
|
# That dir is now ready for the image
|
||||||
tar czf mystic.tar.gz mystic
|
tar czf ../mystic.tar.gz mystic
|
||||||
echo "OK mystic.tar.gz can be moved to your docker build"
|
echo "OK mystic.tar.gz can be moved to your docker build"
|
||||||
|
BIN
libcl.so.3.4.3
BIN
libcl.so.3.4.3
Binary file not shown.
BIN
mystic.tar.gz
BIN
mystic.tar.gz
Binary file not shown.
Reference in New Issue
Block a user