Skip to content

Install Nameless FAST

Robin edited this page Jul 19, 2023 · 9 revisions

Install NamelessMC FAST by copying a couple commands to a terminal. Uses docker, more info here: https://github.com/NamelessMC/Nameless-Docker

Step 0: Make sure you're the root user

If not, run sudo -i

Step 1: Install docker

First check if you already have docker installed! Run docker --version. If it is already installed, skip to the next step.

Ubuntu/debian: apt install docker.io

Most other linux distributions:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Step 2: Install docker-compose

Ubuntu/debian:

apt install docker-compose

Other linux distributions: https://docs.docker.com/compose/install/

Step 3: Download docker-compose file

mkdir -p /opt/nameless && cd /opt/nameless
wget https://raw.githubusercontent.com/NamelessMC/Nameless-Docker/master/docker-compose.yaml

Step 4: Start website

docker-compose up -d

Step 5: Done

After waiting about a minute you should now see your nameless website running on port 80. During the installer, use the following database credentials:

  • address: db
  • port: 3306
  • username: nameless
  • password: nameless
  • database name: nameless

The password is not secure but that's fine, the database is only accessible to the nameless website, it is not open to the internet.

Custom templates and modules

Your website files are in /opt/nameless/web, you can upload any custom templates or modules there.

Phpmyadmin

Add the following lines to docker-compose.yaml:

    phpmyadmin:
        image: phpmyadmin/phpmyadmin
        ports: ['127.0.0.1:8080:80']
        depends_on: [db]
        environment:
            PMA_HOST: db
            PMA_ABSOLUTE_URI: http://localhost:8080
            PMA_USER: nameless # Only specify if you want phpmyadmin to auto login
            PMA_PASSWORD: namelesss # Only specify if you want phpmyadmin to auto login

WARNING Do not remove 127.0.0.1 here, it should not be exposed to the internet!

Use SSH port forwarding to access phpmyadmin:

ssh -f root@yourserver -L 8080:localhost:8080 -N

You can also do this in PuTTY.

Reverse proxy for HTTPS

TODO. If you know how to configure traefik/nginx with let's encrypt easily, please provide instructions here!