mirror of
https://gitlab.com/crafty-controller/crafty-4.git
synced 2024-08-30 18:23:09 +00:00
Update documentation for docker updates
This commit is contained in:
parent
69e85faa1a
commit
ef37afd630
73
README.md
73
README.md
@ -8,7 +8,7 @@ a web interface for the server administrators to interact with their servers. Cr
|
||||
is compatible with Docker, Linux, Windows 7, Windows 8 and Windows 10.
|
||||
|
||||
## Documentation
|
||||
Temporary documentation available on [GitLab](https://gitlab.com/crafty-controller/crafty-commander/wikis/home)
|
||||
Documentation available on [wiki.craftycontrol.com](https://craftycontrol.com)
|
||||
|
||||
## Meta
|
||||
Project Homepage - https://craftycontrol.com
|
||||
@ -17,15 +17,33 @@ Discord Server - https://discord.gg/9VJPhCE
|
||||
|
||||
Git Repository - https://gitlab.com/crafty-controller/crafty-web
|
||||
|
||||
## Basic Docker Usage
|
||||
<br>
|
||||
|
||||
**To get started with docker**, all you need to do is pull the image from this git repository's registry.
|
||||
This is done by using `docker-compose` or `docker run`(You don't need to clone the Repository and build, like in 3.x ).
|
||||
## Basic Docker Usage 🐳
|
||||
|
||||
If you have a config folder already from previous local installation or docker setup, the image should mount this volume, if none is present then it will populate its own config folder for you.
|
||||
With `Crafty Controller 4.0` we have focused on building our DevOps Principles, implementing build automation, and securing our containers, with the hopes of making our Container user's lives abit easier.
|
||||
|
||||
### Using the registry image:
|
||||
The provided image supports both `arm64` and `amd64` out the box, if you have issues though you can build it yourself.
|
||||
### - Two big changes you will notice is:
|
||||
- We now provide pre-built images for you guys.
|
||||
- Containers now run as non-root, using practices used by OpenSwift & Kubernetes (root group perms).
|
||||
|
||||
|
||||
----
|
||||
|
||||
### - To get started with docker 🛫
|
||||
All you need to do is pull the image from this git repository's registry.
|
||||
This is done by using `'docker-compose'` or `'docker run'` (You don't need to clone the Repository and build, like in 3.x ).
|
||||
|
||||
If you have a config folder already from previous local installation or _docker setup_*, the image should mount this volume, if no config present then it will populate its own config folder for you. <br> <br>
|
||||
As the Dockerfile uses the permission structure of `crafty:root` **internally** there is no need to worry about matching the `UID` or `GID` on the host system :)
|
||||
> ***Make sure the ownership permissions on `servers/ backups/ logs/ configs/ imports/` in the `docker/` are not `root:root`, please just chown the dir recursively to your host user.**
|
||||
|
||||
> **Please make sure if you are using a `compose` file, that the above volume mount directories are present, otherwise, docker will just make them and they'll be `root:root` which is not what we want.💀**
|
||||
|
||||
<br>
|
||||
|
||||
### - Using the registry image 🌎
|
||||
The provided image supports both `arm64` and `amd64` out the box, if you have issues though you can build it yourself with the `compose` file in `docker/`.
|
||||
|
||||
The image is located at: `registry.gitlab.com/crafty-controller/crafty-commander:latest`
|
||||
| Branch | Status |
|
||||
@ -50,13 +68,20 @@ or
|
||||
```bash
|
||||
$ echo <token> | docker login registry.gitlab.com -u <username> --password-stdin
|
||||
```
|
||||
or
|
||||
or
|
||||
```bash
|
||||
$ cat ~/my_password.txt | docker login registry.gitlab.com -u <username> --password-stdin
|
||||
```
|
||||
|
||||
Then use one of the following methods:
|
||||
#### docker-compose.yml
|
||||
### **docker-compose.yml:**
|
||||
```sh
|
||||
# We need to make them because of permissions remember!
|
||||
$ mkdir docker/backups docker/logs docker/servers docker/config docker/import
|
||||
|
||||
# Make your compose file
|
||||
$ vim docker-compose.yml
|
||||
```
|
||||
```yml
|
||||
version: '3'
|
||||
|
||||
@ -64,40 +89,52 @@ services:
|
||||
crafty:
|
||||
container_name: crafty_commander
|
||||
image: registry.gitlab.com/crafty-controller/crafty-commander:latest
|
||||
environment:
|
||||
- TZ=Etc/UTC
|
||||
ports:
|
||||
- "8000:8000" # HTTP
|
||||
- "8443:8443" # HTTPS
|
||||
- "8123:8123" # DYNMAP
|
||||
- "19132:19132/udp" # BEDROCK
|
||||
- "24000-25600:24000-25600" # MC SERV PORT RANGE
|
||||
- "25500-25600:25500-25600" # MC SERV PORT RANGE
|
||||
volumes:
|
||||
- ./docker/backups:/commander/backups
|
||||
- ./docker/logs:/commander/logs
|
||||
- ./docker/servers:/commander/servers
|
||||
- ./docker/config:/commander/app/config
|
||||
- ./docker/import:/commander/import
|
||||
```
|
||||
|
||||
#### docker run
|
||||
```sh
|
||||
$ docker-compose up -d && docker-compose logs -f
|
||||
```
|
||||
<br>
|
||||
|
||||
### **docker run:**
|
||||
```sh
|
||||
# We need to make them because of permissions remember!
|
||||
$ mkdir docker/backups docker/logs docker/servers docker/config docker/import
|
||||
|
||||
$ docker run \
|
||||
--name crafty_commander \
|
||||
-p 8000:8000 \
|
||||
-p 8443:8443 \
|
||||
-p 8123:8123 \
|
||||
-p 19132:19132/udp \
|
||||
-p 24000-25600:24000-25600 \
|
||||
-p 25500-25600:25500-25600 \
|
||||
-e TZ=Etc/UTC \
|
||||
-v "/$(pwd)/docker/backups:/commander/backups" \
|
||||
-v "/$(pwd)/docker/logs:/commander/logs" \
|
||||
-v "/$(pwd)/docker/servers:/commander/servers" \
|
||||
-v "/$(pwd)/docker/config:/commander/app/config" \
|
||||
-v "/$(pwd)/docker/import:/commander/import" \
|
||||
registry.gitlab.com/crafty-controller/crafty-commander:latest
|
||||
```
|
||||
|
||||
### Building from the cloned repository:
|
||||
### **Building from the cloned repository:**
|
||||
|
||||
If you are building from `docker-compose` you can find the compose file in `./docker/docker-compose.yml` just `cd` to the docker directory and `docker-compose up -d`
|
||||
|
||||
If you'd rather not use `docker-compose` you can use the following `docker run`in the directory where the *Dockerfile* is:
|
||||
If you'd rather not use `docker-compose` you can use the following `docker run` in the directory where the *Dockerfile* is:
|
||||
```sh
|
||||
# REMEMBER, Build your image first!
|
||||
$ docker build . -t crafty
|
||||
@ -108,11 +145,13 @@ $ docker run \
|
||||
-p 8443:8443 \
|
||||
-p 8123:8123 \
|
||||
-p 19132:19132/udp \
|
||||
-p 24000-25600:24000-25600 \
|
||||
-p 25500-25600:25500-25600 \
|
||||
-e TZ=Etc/UTC \
|
||||
-v "/$(pwd)/docker/backups:/commander/backups" \
|
||||
-v "/$(pwd)/docker/logs:/commander/logs" \
|
||||
-v "/$(pwd)/docker/servers:/commander/servers" \
|
||||
-v "/$(pwd)/docker/config:/commander/app/config" \
|
||||
-v "/$(pwd)/docker/import:/commander/import" \
|
||||
crafty
|
||||
```
|
||||
A fresh build will take several minutes depending on your system, but will be rapid there after.
|
||||
A fresh build will take several minutes depending on your system, but will be rapid thereafter.
|
||||
|
Loading…
Reference in New Issue
Block a user