Giter Site home page Giter Site logo

arch-crafty-4's Introduction

Application

Crafty Controller v4

Description

Crafty Controller is a free and open-source Minecraft launcher and manager that allows users to start and administer Minecraft servers from a user-friendly interface. The interface is run as a self-hosted web server that is accessible to devices on the local network by default and can be port forwarded to provide external access outside of your local network. Crafty is designed to be easy to install and use, requiring only a bit of technical knowledge and a desire to learn to get started. Crafty Controller is still actively being developed by Arcadia Technology and we are continually making major improvements to the software.

Crafty Controller is a feature rich panel that allows you to create and run servers, manage players, run commands, change server settings, view and edit server files, and make backups. With the help of Crafty Controller managing a large number of Minecraft servers on separate versions is easy and intuitive to do.

Build notes

Latest commit to GitHub branch 'master'.

Usage

docker run -d \
    -p <host port for crafty web ui http>:8000 \
    -p <host port for crafty web ui https>:8443 \
    -p <host tcp port range for minecraft bedrock servers>:19132-19232/tcp \
    -p <host udp port range for minecraft bedrock servers>:19132-19232/udp \
    -p <host tcp port range for minecraft java servers>:25565-25575/tcp \
    --name=<container name> \
    -v <path for config files>:/config \
    -v /etc/localtime:/etc/localtime:ro \
    -e TZ=Etc/<region> \
    -e JAVA_VERSION=<8|11|17|latest> \
    -e UMASK=<umask for created files> \
    -e PUID=<uid for user> \
    -e PGID=<gid for user> \
    binhex/arch-crafty-4

Please replace all user variables in the above command defined by <> with the correct values.

Access Crafty Web UI

https://<host ip>:8443 Note HTTP running on port 8000 is legacy and will redirect to HTTPS on port 8443

Web UI Credentials

Username: admin
Password: This is now dynamically generated, if not set then the password will be stored in /config/crafty/app/config/default-creds.txt, for reference the previously hardcoded password was crafty.

Example

docker run -d \
    -p 8000:8000 \
    -p 8443:8443 \
    -p 19132-19232:19132-19232/tcp \
    -p 19132-19232:19132-19232/udp \
    -p 25565-25575:25565-25575/tcp \
    --name=crafty \
    -v /apps/docker/crafty:/config \
    -v /etc/localtime:/etc/localtime:ro \
    -e TZ=Etc/UTC \
    -e JAVA_VERSION=latest \
    -e UMASK=000 \
    -e PUID=99 \
    -e PGID=100 \
    binhex/arch-crafty-4

Notes

Crafty v4 does not support running as user root group root, so please ensure PUID and PGID are NOT set to 0.

User ID (PUID) and Group ID (PGID) can be found by issuing the following command for the user you want to run the container as:-

id <username>

If you appreciate my work, then please consider buying me a beer :D

PayPal donation

Documentation | Support forum

arch-crafty-4's People

Contributors

binhex avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

arch-crafty-4's Issues

VErsion 4.4.0

Version 4.4.0 has been released which fixes the Server JARs API issues in the 4.3.2 version.

Do we have any idea when this will be available in this repo?

How to reset admin password?

How does one reset the admin password from the console (or environment variable)? I'm apparently on the latest version, but I can't seem to find the generated admin password (the file doesn't exist in /config/crafty/app/config and nothing in the log file mentions anything about a generated password in my case).

Application failed to start [Unraid]

Here the Log:

++ export PS1
++ VIRTUAL_ENV_PROMPT='(venv) '
++ export VIRTUAL_ENV_PROMPT
++ hash -r

2024-04-01 13:06:27,177 DEBG 'start-script' stderr output:

  • [[ -f /config/crafty/app/config/session.lock ]]
  • echo 'Removing previous session.lock file '''/config/crafty/app/config/session.lock'''...'

2024-04-01 13:06:27,177 DEBG 'start-script' stdout output:
Removing previous session.lock file '/config/crafty/app/config/session.lock'...

2024-04-01 13:06:27,177 DEBG 'start-script' stderr output:

  • rm -f /config/crafty/app/config/session.lock

2024-04-01 13:06:27,178 DEBG 'start-script' stderr output:

  • cp /opt/crafty/app/config-backup/version.json /config/crafty/app/config/version.json

2024-04-01 13:06:27,180 DEBG 'start-script' stderr output:

  • python3 /opt/crafty/main.py

2024-04-01 13:06:27,708 DEBG 'start-script' stdout output:
Logging set to: 0

2024-04-01 13:06:27,709 DEBG 'start-script' stdout output:

///////////////////////////////////////////////////////////////////////////
#                  Welcome to Crafty Controller - v.4.3.1                 #
///////////////////////////////////////////////////////////////////////////
#          Server Manager / Web Portal for your Minecraft server          #
#                     Homepage: www.craftycontrol.com                     #
///////////////////////////////////////////////////////////////////////////

2024-04-01 13:06:27,711 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Starting migrations

2024-04-01 13:06:27,720 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Type Change)

2024-04-01 13:06:27,727 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Type Change) : SUCCESS

2024-04-01 13:06:27,729 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Foreign Keys)

2024-04-01 13:06:27,949 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Foreign Keys) : SUCCESS

2024-04-01 13:06:27,950 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Primary Keys)

2024-04-01 13:06:27,951 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Primary Keys) : SUCCESS

2024-04-01 13:06:27,952 DEBG 'start-script' stdout output:
[+] Crafty: 01/04/24 13:06:27 - INFO: Migrating Data from Int to UUID (Removing UUID Field from Servers)

2024-04-01 13:06:27,954 DEBG 'start-script' stderr output:
Traceback (most recent call last):

2024-04-01 13:06:27,954 DEBG 'start-script' stderr output:
File "/opt/crafty/main.py", line 337, in
migration_manager.up() # Automatically runs migrations
^^^^^^^^^^^^^^
2024-04-01 13:06:27,954 DEBG 'start-script' stderr output:
^^^^^^^^
File "/opt/crafty/app/classes/shared/migration.py", line 431, in up
done.append(self.up_one(mname, self.migrator))

2024-04-01 13:06:27,954 DEBG 'start-script' stderr output:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/crafty/app/classes/shared/migration.py", line 476, in up_one

2024-04-01 13:06:27,954 DEBG 'start-script' stderr output:
migrate_fn(migrator, self.database)
File "", line 207, in migrate
File "/opt/crafty/app/classes/shared/migration.py", line 68, in wrapper

2024-04-01 13:06:27,955 DEBG 'start-script' stderr output:
return method(migrator, migrator.table_dict[model], *args, **kwargs)
~~~~~~~~~~~~~~~~~~~^^^^^^^

2024-04-01 13:06:27,955 DEBG 'start-script' stderr output:
KeyError: 'servers'

2024-04-01 13:06:28,015 DEBG fd 8 closed, stopped monitoring <POutputDispatcher at 22568512270224 for <Subprocess at 22568512574544 with name start-script in state RUNNING> (stdout)>
2024-04-01 13:06:28,015 DEBG fd 10 closed, stopped monitoring <POutputDispatcher at 22568526252240 for <Subprocess at 22568512574544 with name start-script in state RUNNING> (stderr)>
2024-04-01 13:06:28,015 WARN exited: start-script (exit status 1; not expected)
2024-04-01 13:06:28,015 DEBG received SIGCHLD indicating a child quit

If there is a fix alredy pls leet mee know thx (Real cool Project)

Nonfunctional Bedrock Support & Container Root

Hi! Leadership member of the Crafty team here.

We added Bedrock support in v4, which your image will not work with as it does not have the required dependencies since they are not packaged with Arch and need installed separately. Further, we actually have an official image (see our GitLab registry).

We also have received some reports about people running into our root check that are possibly using your image - from what I can tell, it looks like their containers are running as UID 0, so our root check is preventing it from running as a deliberate security feature we built in; this may just be a red herring, though.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.