5 Commits

Author SHA1 Message Date
fdba02faed fix: bug not allowing set custom key.
All checks were successful
Docker Image CI / docker (push) Successful in 1m48s
2025-08-02 21:43:47 -07:00
b017fcd217 add version 1.10.1
All checks were successful
Docker Image CI / docker (push) Successful in 1m56s
2025-08-02 21:07:56 -07:00
b3e636e36a test
All checks were successful
Docker Image CI / docker (pull_request) Successful in 49s
Docker Image CI / docker (push) Successful in 1m57s
2025-08-02 09:00:58 -07:00
57172a3609 test
All checks were successful
Docker Image CI / docker (push) Successful in 1m49s
2025-08-02 08:56:50 -07:00
87686bf4f7 update: holesail 2.2.0
All checks were successful
Docker Image CI / docker (pull_request) Successful in 55s
Docker Image CI / docker (push) Successful in 2m1s
2025-07-30 15:02:15 -07:00
4 changed files with 24 additions and 26 deletions

View File

@@ -55,7 +55,6 @@ jobs:
- name: Build and push
uses: docker/build-push-action@v6
with:
platforms: linux/amd64,linux/arm64
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
labels: ${{ steps.meta.outputs.labels }}

View File

@@ -1,6 +1,6 @@
FROM node:lts-slim AS base
RUN npm install -g holesail@2.1.0
RUN npm install -g holesail@1.10.1
FROM base AS dev

View File

@@ -17,7 +17,7 @@ The following environment variables are available:
- HOST: The hostname or IP address to use for the client or server mode.
- PUBLIC: A boolean value indicating whether the server should use a public connetor string. Only applicable in server mode.
- FORCE: A boolean value indicating whether to force a short connector string of less than 32 chars. Only applicable in server and filemanager modes.
- CONNECTOR: A connector string used to identify the connection. Can be used in client, server, and filemanager modes.
- KEY: A string used to identify the connection. Can be used in client, server, and filemanager modes.
- USERNAME: The username to use for authentication in filemanager mode.
- PASSWORD: The password to use for authentication in filemanager mode.
- ROLE: The role to assign to the user in filemanager mode. Can be either admin or user.
@@ -41,7 +41,7 @@ docker run -d --name holesail \
-e MODE=server \
-e PORT=25565 \
-e HOST=minecraft \
-e CONNECTOR=very-super-secret \
-e KEY=very-super-secret \
-e PUBLIC=false \
--network holesail \
anaxios/holesail:latest
@@ -66,7 +66,7 @@ services:
PORT: 25565
HOST: minecraft
PUBLIC: false
CONNECTOR: very-super-secret
KEY: very-super-secret
networks:
- holesail
@@ -101,18 +101,17 @@ services:
holesail:
container_name: holesail
restart: unless-stopped
network_mode: "host"
ports:
- 8989:8989
image: anaxios/holesail:latest
environment:
MODE: client
PORT: 8989
HOST: 0.0.0.0
PUBLIC: false
CONNECTOR: very-super-secret
KEY: very-super-secret
```
**Note:** Client mode only works on Linux, and is incompatible with Windows and Mac.
### Filemanager Mode
In Filemanager mode, Holesail-docker serves a file manager interface. Example `docker-compose.yml` file:
@@ -131,7 +130,7 @@ services:
ROLE: user
USERNAME: admin
PASSWORD: admin
CONNECTOR: very-super-secret
KEY: very-super-secret
volumes:
- <host dir>:/data
```
@@ -153,7 +152,7 @@ services:
PORT: 25565
HOST: minecraft
PUBLIC: false
CONNECTOR: very-super-secret
KEY: very-super-secret
networks:
- holesail

28
run.sh
View File

@@ -25,9 +25,9 @@ success() {
print "$GREEN" "$1"
}
get_connector_my_mc() {
KEY="$(/usr/local/bin/node /fetch-my-mc-connector.js)"
}
#get_connector_my_mc() {
# KEY="$(/usr/local/bin/node /fetch-my-mc-connector.js)"
#}
cmd_argument_builder () {
local args="";
@@ -36,15 +36,15 @@ cmd_argument_builder () {
[[ "$PORT" ]] && args="$args --port $PORT";
[[ "$HOST" ]] && args="$args --host $HOST";
[[ "$KEY" ]] && args="$args $KEY";
[[ "$UDP" = "true" ]] && args="$args --udp";
#[[ "$UDP" = "true" ]] && args="$args --udp";
;;
"server")
[[ "$PORT" ]] && args="$args --live $PORT";
[[ "$HOST" ]] && args="$args --host $HOST";
[[ "$PUBLIC" = "true" ]] && args="$args --public";
[[ "$FORCE" = "true" ]] && args="$args --force";
[[ "$KEY" ]] && args="$args --key $KEY";
[[ "$UDP" = "true" ]] && args="$args --udp";
[[ "$KEY" ]] && args="$args --connector $KEY";
#[[ "$UDP" = "true" ]] && args="$args --udp";
;;
"filemanager")
args="--filemanager";
@@ -56,14 +56,15 @@ cmd_argument_builder () {
[[ "$ROLE" = "admin" ]] && args="$args --role admin";
[[ "$ROLE" = "user" ]] && args="$args --role user";
[[ "$KEY" ]] && args="$args --key $KEY";
[[ "$UDP" = "true" ]] && args="$args --udp";
;;
"my-mc")
[[ "$PORT" ]] && args="$args --port $PORT";
[[ "$HOST" ]] && args="$args --host $HOST";
[[ "$KEY" ]] && args="$args --connect $KEY";
[[ "$UDP" = "true" ]] && args="$args --udp";
#[[ "$UDP" = "true" ]] && args="$args --udp";
;;
# "my-mc")
# #if ! get_connector_my_mc; then exit 1; fi
# [[ "$PORT" ]] && args="$args --port $PORT";
# [[ "$HOST" ]] && args="$args --host $HOST";
# [[ "$KEY" ]] && args="$args --connect $KEY";
# #[[ "$UDP" = "true" ]] && args="$args --udp";
# ;;
esac
printf "%s" "$args";
@@ -83,7 +84,6 @@ term_handler() {
}
if ! get_connector_my_mc; then exit 1; fi
ARGS="$(cmd_argument_builder)"