Compare commits
5 Commits
3b44dff061
...
71c9b169df
| Author | SHA1 | Date | |
|---|---|---|---|
| 71c9b169df | |||
| a499fed7ba | |||
| 450cae64b9 | |||
| 453913e1ab | |||
| 56daea7eb6 |
13
elastic-search-5/Dockerfile
Normal file
13
elastic-search-5/Dockerfile
Normal file
@ -0,0 +1,13 @@
|
||||
ARG IMAGE_NAME
|
||||
ARG IMAGE_VERSION
|
||||
FROM ${IMAGE_NAME}:${IMAGE_VERSION}
|
||||
|
||||
RUN bin/elasticsearch-plugin install x-pack
|
||||
|
||||
ADD elasticsearch.yml /usr/share/elasticsearch/config/
|
||||
|
||||
USER root
|
||||
|
||||
RUN chown elasticsearch:elasticsearch config/elasticsearch.yml
|
||||
|
||||
USER elasticsearch
|
||||
12
elastic-search-5/elasticsearch.yml
Normal file
12
elastic-search-5/elasticsearch.yml
Normal file
@ -0,0 +1,12 @@
|
||||
http:
|
||||
host: 0.0.0.0
|
||||
transport:
|
||||
host: 127.0.0.1
|
||||
xpack:
|
||||
security:
|
||||
enabled: false
|
||||
authc:
|
||||
anonymous:
|
||||
roles:
|
||||
- role1
|
||||
- role2
|
||||
67
elastic-search-5/run.sh
Executable file
67
elastic-search-5/run.sh
Executable file
@ -0,0 +1,67 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
|
||||
IMAGE_NAME="elasticsearch"
|
||||
IMAGE_VERSION="5.6.16"
|
||||
|
||||
SERVICE_NAME=ys-elastic-search
|
||||
|
||||
|
||||
source ${SCRIPT_PATH}/../common.shinc
|
||||
|
||||
#
|
||||
# Project specific variables
|
||||
#
|
||||
|
||||
DOMAIN_NAME="elastic5.loc"
|
||||
|
||||
RELEASE_NAME="yoursystemcz/elasticsearch"
|
||||
RELEASE_VERSION="5.6.16"
|
||||
|
||||
PERSISTENT_VOLUME="ys-elastic-5"
|
||||
|
||||
source ${SCRIPT_PATH}/env.shinc 2> /dev/null
|
||||
|
||||
|
||||
init() {
|
||||
__init
|
||||
|
||||
# Create networks
|
||||
NETWORKS=(${SEARCH_ENGINE_NETWORK} ${PROXY_NETWORK})
|
||||
__createNetworks
|
||||
|
||||
docker create \
|
||||
--name ${SERVICE_NAME} \
|
||||
-e VIRTUAL_HOST=${DOMAIN_NAME} \
|
||||
-e VIRTUAL_PORT=9200 \
|
||||
-v ${PERSISTENT_VOLUME}:/usr/share/elasticsearch/data \
|
||||
--net ${SEARCH_ENGINE_NETWORK} \
|
||||
${RELEASE_NAME}:${RELEASE_VERSION}
|
||||
|
||||
[[ $? -ne 0 ]] && return 1
|
||||
|
||||
docker network connect ${PROXY_NETWORK} ${SERVICE_NAME}
|
||||
|
||||
__ask_to_start
|
||||
}
|
||||
|
||||
build() {
|
||||
docker build \
|
||||
--build-arg IMAGE_NAME=${IMAGE_NAME} \
|
||||
--build-arg IMAGE_VERSION=${IMAGE_VERSION} \
|
||||
-t ${RELEASE_NAME}:${RELEASE_VERSION} \
|
||||
${SCRIPT_PATH}
|
||||
}
|
||||
|
||||
release() {
|
||||
build
|
||||
|
||||
docker push ${RELEASE_NAME}:${RELEASE_VERSION}
|
||||
|
||||
return $?
|
||||
}
|
||||
|
||||
"$@"
|
||||
|
||||
exit $?
|
||||
13
elastic-search-6/Dockerfile
Normal file
13
elastic-search-6/Dockerfile
Normal file
@ -0,0 +1,13 @@
|
||||
ARG IMAGE_NAME
|
||||
ARG IMAGE_VERSION
|
||||
FROM ${IMAGE_NAME}:${IMAGE_VERSION}
|
||||
|
||||
RUN bin/elasticsearch-plugin install x-pack
|
||||
|
||||
ADD elasticsearch.yml /usr/share/elasticsearch/config/
|
||||
|
||||
USER root
|
||||
|
||||
RUN chown elasticsearch:elasticsearch config/elasticsearch.yml
|
||||
|
||||
USER elasticsearch
|
||||
12
elastic-search-6/elasticsearch.yml
Normal file
12
elastic-search-6/elasticsearch.yml
Normal file
@ -0,0 +1,12 @@
|
||||
http:
|
||||
host: 0.0.0.0
|
||||
transport:
|
||||
host: 127.0.0.1
|
||||
xpack:
|
||||
security:
|
||||
enabled: false
|
||||
authc:
|
||||
anonymous:
|
||||
roles:
|
||||
- role1
|
||||
- role2
|
||||
67
elastic-search-6/run.sh
Executable file
67
elastic-search-6/run.sh
Executable file
@ -0,0 +1,67 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
|
||||
IMAGE_NAME="elasticsearch"
|
||||
IMAGE_VERSION="6.4.3"
|
||||
|
||||
SERVICE_NAME=ys-elastic-search-6
|
||||
|
||||
|
||||
source ${SCRIPT_PATH}/../common.shinc
|
||||
|
||||
#
|
||||
# Project specific variables
|
||||
#
|
||||
|
||||
DOMAIN_NAME="elastic6.loc"
|
||||
|
||||
RELEASE_NAME="yoursystemcz/elasticsearch"
|
||||
RELEASE_VERSION="6.4.3"
|
||||
|
||||
PERSISTENT_VOLUME="ys-elastic-6"
|
||||
|
||||
source ${SCRIPT_PATH}/env.shinc 2> /dev/null
|
||||
|
||||
|
||||
init() {
|
||||
__init
|
||||
|
||||
# Create networks
|
||||
NETWORKS=(${SEARCH_ENGINE_NETWORK} ${PROXY_NETWORK})
|
||||
__createNetworks
|
||||
|
||||
docker create \
|
||||
--name ${SERVICE_NAME} \
|
||||
-e VIRTUAL_HOST=${DOMAIN_NAME} \
|
||||
-e VIRTUAL_PORT=9200 \
|
||||
-v ${PERSISTENT_VOLUME}:/usr/share/elasticsearch/data \
|
||||
--net ${SEARCH_ENGINE_NETWORK} \
|
||||
${RELEASE_NAME}:${RELEASE_VERSION}
|
||||
|
||||
[[ $? -ne 0 ]] && return 1
|
||||
|
||||
docker network connect ${PROXY_NETWORK} ${SERVICE_NAME}
|
||||
|
||||
__ask_to_start
|
||||
}
|
||||
|
||||
build() {
|
||||
docker build \
|
||||
--build-arg IMAGE_NAME=${IMAGE_NAME} \
|
||||
--build-arg IMAGE_VERSION=${IMAGE_VERSION} \
|
||||
-t ${RELEASE_NAME}:${RELEASE_VERSION} \
|
||||
${SCRIPT_PATH}
|
||||
}
|
||||
|
||||
release() {
|
||||
build
|
||||
|
||||
docker push ${RELEASE_NAME}:${RELEASE_VERSION}
|
||||
|
||||
return $?
|
||||
}
|
||||
|
||||
"$@"
|
||||
|
||||
exit $?
|
||||
@ -5,7 +5,6 @@ SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
IMAGE_NAME="elasticsearch"
|
||||
# Old version, AWS supported
|
||||
IMAGE_VERSION="2.3.5"
|
||||
#IMAGE_VERSION="5.3.2"
|
||||
|
||||
SERVICE_NAME=ys-elastic-search
|
||||
|
||||
@ -21,7 +20,6 @@ DOMAIN_NAME="elastic.loc"
|
||||
RELEASE_NAME="yoursystemcz/elasticsearch"
|
||||
# Old version, AWS supported
|
||||
RELEASE_VERSION="2.3.5"
|
||||
#RELEASE_VERSION="5.3.2"
|
||||
|
||||
PERSISTENT_VOLUME="ys-elastic"
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
|
||||
IMAGE_NAME="mariadb"
|
||||
IMAGE_VERSION="10.1"
|
||||
IMAGE_VERSION="10.3"
|
||||
|
||||
SERVICE_NAME=maria-db
|
||||
|
||||
@ -56,7 +56,7 @@ backup() {
|
||||
local user=$(id -u)
|
||||
|
||||
mkdir -p ${BACKUP_DIR} && \
|
||||
docker run --rm --volumes-from ${SERVICE_NAME} -v ${BACKUP_DIR}:/backup busybox tar cvf /backup/backup.tar /var/lib/mysql && chown -R ${user}:${user} ./backup
|
||||
docker run --rm --volumes-from ${SERVICE_NAME} -v ${BACKUP_DIR}:/backup busybox tar cvf /backup/backup.tar /var/lib/mysql && sudo chown -R ${user}:${user} ./backup
|
||||
if [[ $? -ne 0 ]]; then
|
||||
__err "Could not create the backup"
|
||||
exit 2
|
||||
|
||||
18
node-interpretter/Makefile
Normal file
18
node-interpretter/Makefile
Normal file
@ -0,0 +1,18 @@
|
||||
DOCKER_REGISTRY = dr.ys-dev.cz
|
||||
DOCKER_PUBLIC_REGISTRY = yoursystemcz
|
||||
APP_NAME = node-interpretter
|
||||
|
||||
|
||||
|
||||
all: build release
|
||||
|
||||
|
||||
build:
|
||||
docker build -t $(DOCKER_REGISTRY)/$(APP_NAME):latest --build-arg "IMAGE_NAME=node" --build-arg "IMAGE_VERSION=10.15.0-slim" ./src
|
||||
|
||||
tag:
|
||||
docker tag $(DOCKER_REGISTRY)/$(APP_NAME):latest $(DOCKER_PUBLIC_REGISTRY)/$(APP_NAME):latest
|
||||
|
||||
release: tag
|
||||
docker push $(DOCKER_REGISTRY)/$(APP_NAME):latest
|
||||
docker push $(DOCKER_PUBLIC_REGISTRY)/$(APP_NAME):latest
|
||||
41
node-interpretter/bin/node
Executable file
41
node-interpretter/bin/node
Executable file
@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
|
||||
SERVICE_NAME="node-interpretter"
|
||||
|
||||
source ${SCRIPT_PATH}/shared.env.shinc 2> /dev/null
|
||||
source ${SCRIPT_PATH}/env.shinc 2> /dev/null
|
||||
|
||||
|
||||
docker inspect --type container ${SERVICE_NAME} > /dev/null 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "The node container does not exist"
|
||||
exit 137
|
||||
fi
|
||||
|
||||
NODE_SERVICE_STATE=$(docker inspect --type container ${SERVICE_NAME} --format "{{.State.Running}}")
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "Could not get state of the node container"
|
||||
exit 137
|
||||
fi
|
||||
|
||||
if [[ "${NODE_SERVICE_STATE}" != "true" ]]; then
|
||||
docker start ${SERVICE_NAME} > /dev/null 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "Could not start the node container"
|
||||
exit 137
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
case "${1}" in
|
||||
npm|npx|yarn|yarnpkg|*npm-cli.js*|*npx-cli.js*)
|
||||
docker exec -i ${SERVICE_NAME} "$@"
|
||||
;;
|
||||
*)
|
||||
docker exec -i ${SERVICE_NAME} node "$@"
|
||||
;;
|
||||
esac
|
||||
3
node-interpretter/bin/npm
Executable file
3
node-interpretter/bin/npm
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
node npm "$@"
|
||||
3
node-interpretter/bin/npx
Executable file
3
node-interpretter/bin/npx
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
node npx "$@"
|
||||
3
node-interpretter/bin/yarn
Executable file
3
node-interpretter/bin/yarn
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
node yarn "$@"
|
||||
3
node-interpretter/bin/yarnpkg
Executable file
3
node-interpretter/bin/yarnpkg
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
node yarnpkg "$@"
|
||||
3
node-interpretter/env.shinc.example
Normal file
3
node-interpretter/env.shinc.example
Normal file
@ -0,0 +1,3 @@
|
||||
PROJECTS_PATH="${HOME}/projects"
|
||||
MOUNT_PATHS=("${HOME}:${HOME}" "${PROJECTS_PATH}:/projects" "/mnt:/mnt")
|
||||
#RESTART=1
|
||||
129
node-interpretter/run.sh
Executable file
129
node-interpretter/run.sh
Executable file
@ -0,0 +1,129 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
|
||||
IMAGE_NAME="yoursystemcz/node-interpretter"
|
||||
IMAGE_VERSION="latest"
|
||||
|
||||
SERVICE_NAME="node-interpretter"
|
||||
|
||||
|
||||
source ${SCRIPT_PATH}/../common.shinc
|
||||
|
||||
#
|
||||
# Project specific variables
|
||||
#
|
||||
|
||||
MOUNT_PATHS=()
|
||||
RESTART=0
|
||||
|
||||
source ${SCRIPT_PATH}/shared.env.shinc 2> /dev/null
|
||||
source ${SCRIPT_PATH}/env.shinc 2> /dev/null
|
||||
|
||||
|
||||
__createLink() {
|
||||
local continue
|
||||
local hostPath="${1}"
|
||||
local binaryLink="${2}"
|
||||
|
||||
if [[ -f "${hostPath}" || -L "${hostPath}" ]]; then
|
||||
__warn "There is already a ${hostPath}, are you sure you want to replace it? [y/(n)]:"
|
||||
read continue
|
||||
if [[ "${continue}" == "y" || "${continue}" == "Y" ]]; then
|
||||
__msg "Linking node binary at ${hostPath}"
|
||||
sudo rm -f "${hostPath}"
|
||||
sudo ln -s "${SCRIPT_PATH}/bin/${binaryLink}" "${hostPath}"
|
||||
[[ $? -ne 0 ]] && __err "Could not link ${binaryLink} binary at ${hostPath}" && return 137
|
||||
fi
|
||||
else
|
||||
__msg "Linking node binary at ${hostPath}"
|
||||
sudo ln -s "${SCRIPT_PATH}/bin/${binaryLink}" "${hostPath}"
|
||||
fi
|
||||
}
|
||||
|
||||
__deleteLink() {
|
||||
local hostPath="${1}"
|
||||
local binaryLink="${2}"
|
||||
|
||||
if [[ -L "${hostPath}" ]]; then
|
||||
local linkName=$(readlink -f "${hostPath}")
|
||||
if [[ $? -eq 0 && "${linkName}" == "${SCRIPT_PATH}/bin/${binaryLink}" ]]; then
|
||||
__warn "Removing link at ${hostPath}"
|
||||
sudo rm -f ${hostPath}
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
__createLinks() {
|
||||
__createLink "${NODE_HOST_PATH}" node
|
||||
__createLink "${NODE_HOST_PATH}js" node
|
||||
__createLink "${NPM_HOST_PATH}" npm
|
||||
__createLink "${NPX_HOST_PATH}" npx
|
||||
__createLink "${YARN_HOST_PATH}" yarn
|
||||
__createLink "${YARNPKG_HOST_PATH}" yarnpkg
|
||||
}
|
||||
|
||||
__deleteLinks() {
|
||||
__deleteLink "${NODE_HOST_PATH}" node
|
||||
__deleteLink "${NODE_HOST_PATH}js" node
|
||||
__deleteLink "${NPM_HOST_PATH}" npm
|
||||
__deleteLink "${NPX_HOST_PATH}" npx
|
||||
__deleteLink "${YARN_HOST_PATH}" yarn
|
||||
__deleteLink "${YARNPKG_HOST_PATH}" yarnpkg
|
||||
}
|
||||
|
||||
init() {
|
||||
__createLinks
|
||||
|
||||
local mountPaths=""
|
||||
[[ ${#MOUNT_PATHS[@]} -eq 0 ]] && __err "No MOUNT_PATHS were specified. Please provide these in an .env.shinc file at ${SCRIPT_PATH}/.env.shinc" && return 137
|
||||
for mountPath in ${MOUNT_PATHS[@]}; do
|
||||
mountPaths="${mountPaths} -v ${mountPath}"
|
||||
done
|
||||
|
||||
args="${mountPaths} -v ${SCRIPT_PATH}/configs/${SERVICE_NAME/plex_/}:/config"
|
||||
|
||||
if [[ ${RESTART} -eq 1 ]]; then
|
||||
args="${args} --restart=always"
|
||||
fi
|
||||
|
||||
docker create \
|
||||
--name ${SERVICE_NAME} \
|
||||
--user $(id -u) \
|
||||
-v ${SSH_KEY}:/home/node/.ssh/${SSH_KEY_NAME} \
|
||||
-v ${KNOWN_HOSTS}:/home/node/.ssh/known_hosts \
|
||||
-v npm-cache:/home/node/.npm \
|
||||
-e TZ=Europe/Prague \
|
||||
${args} \
|
||||
--net host \
|
||||
--entrypoint /cmd \
|
||||
${IMAGE_NAME}:${IMAGE_VERSION}
|
||||
|
||||
[[ $? -ne 0 ]] && __err "Could not create the docker container" && return 137
|
||||
|
||||
docker start ${SERVICE_NAME} && \
|
||||
docker exec --user 0 ${SERVICE_NAME} mkdir -p /usr/local/lib/node_modules && \
|
||||
docker exec --user 0 ${SERVICE_NAME} chown $(id -u) /usr/local/lib/node_modules && \
|
||||
docker exec --user 0 ${SERVICE_NAME} chown $(id -u) /usr/local/bin
|
||||
}
|
||||
|
||||
remove() {
|
||||
stop
|
||||
|
||||
__msg "Removing container... " 0 no
|
||||
STATUS=$(docker rm ${SERVICE_NAME} 2>&1)
|
||||
if [[ $? -ne 0 ]]; then
|
||||
__err "${STATUS}"
|
||||
return 1
|
||||
else
|
||||
__success "[ok]"
|
||||
fi
|
||||
|
||||
__deleteLinks
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
"$@"
|
||||
|
||||
exit $?
|
||||
12
node-interpretter/shared.env.shinc
Normal file
12
node-interpretter/shared.env.shinc
Normal file
@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SSH_KEY="$HOME/.ssh/id_rsa"
|
||||
SSH_KEY_NAME="id_rsa"
|
||||
KNOWN_HOSTS="${HOME}/.ssh/known_hosts"
|
||||
PROJECTS_PATH="${HOME}/projects"
|
||||
|
||||
NODE_HOST_PATH="/usr/local/bin/node"
|
||||
NPM_HOST_PATH="/usr/local/bin/npm"
|
||||
NPX_HOST_PATH="/usr/local/bin/npx"
|
||||
YARN_HOST_PATH="/usr/local/bin/yarn"
|
||||
YARNPKG_HOST_PATH="/usr/local/bin/yarnpkg"
|
||||
8
node-interpretter/src/Dockerfile
Normal file
8
node-interpretter/src/Dockerfile
Normal file
@ -0,0 +1,8 @@
|
||||
ARG IMAGE_NAME
|
||||
ARG IMAGE_VERSION
|
||||
|
||||
FROM ${IMAGE_NAME}:${IMAGE_VERSION}
|
||||
|
||||
COPY ["./cmd", "/cmd"]
|
||||
|
||||
ENTRYPOINT ["node"]
|
||||
11
node-interpretter/src/cmd
Executable file
11
node-interpretter/src/cmd
Executable file
@ -0,0 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
echo "Waiting for commands..."
|
||||
while :
|
||||
do
|
||||
sleep 10 &
|
||||
wait
|
||||
done
|
||||
|
||||
|
||||
exit 0
|
||||
@ -2,8 +2,8 @@
|
||||
|
||||
SCRIPT_PATH=$( cd "$(dirname "$0")" ; pwd -P )
|
||||
|
||||
IMAGE_NAME="chorss/docker-pgadmin4"
|
||||
IMAGE_VERSION="3.0"
|
||||
IMAGE_NAME="dpage/pgadmin4"
|
||||
IMAGE_VERSION="4.1"
|
||||
|
||||
SERVICE_NAME=pgadmin
|
||||
|
||||
@ -15,6 +15,8 @@ source ${SCRIPT_PATH}/../common.shinc
|
||||
#
|
||||
|
||||
DOMAIN_NAME="pgadmin.loc"
|
||||
PGADMIN_DEFAULT_EMAIL="admin"
|
||||
PGADMIN_DEFAULT_PASSWORD="admin"
|
||||
|
||||
source ${SCRIPT_PATH}/env.shinc 2> /dev/null
|
||||
|
||||
@ -29,8 +31,10 @@ init() {
|
||||
docker create \
|
||||
--name ${SERVICE_NAME} \
|
||||
-e VIRTUAL_HOST=${DOMAIN_NAME} \
|
||||
-e VIRTUAL_PORT=5050 \
|
||||
-v pgadmin_data:/data \
|
||||
-e VIRTUAL_PORT=80 \
|
||||
-e PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL} \
|
||||
-e PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD} \
|
||||
-v pgadmin:/var/lib/pgadmin \
|
||||
--restart=unless-stopped \
|
||||
${IMAGE_NAME}:${IMAGE_VERSION}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user