Skip to content

seem8/astech

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

README

This is a webapp to control and manage headless MegaMek (www.megamek.org) server.

It's intended to run on a Linux machine with Java 17 and Python 3.6+. Tested up to Python 3.12.

HOW TO RUN

  1. Install Java JDK 17 as /usr/bin/java. It can be a symlink to /etc/alternatives.

  2. Unpack megamek-0.[version].[release].tar.gz as astech/megamek-version directory. In this example it will be megamek-0.49.19.1 (https://github.com/MegaMek/megamek/releases/download/v0.49.19.1/megamek-0.49.19.1.tar.gz). Read astech-version/PLACEHOLDER_FOR_ASTECH (https://github.com/seem8/astech/blob/master/app/astech/megamek-version/PLACEHOLDER_FOR_MEGAMEK) for more deailed instruction.

  3. Run command AST_LISTEN=0.0.0.0 AST_DEBUG=True AST_MM_VERSION=0.49.19.1 AST_MM_PORT=2346 AST_USER=username AST_PASS=password python3 astech.py

  4. View "localhost:8080" in your browser. You can run it on a public IP and it will work, but without any https encryption, or anti-ddos protection.

ENV variables to use:

  • AST_DEBUG=True|False ; run application in debug mode; optional ; default False
  • AST_LISTEN=0.0.0.0|[any.local.ip.address] ; IP to listen for http traffic ; optional ; default 127.0.0.1
  • AST_PORT=[number] ; port number for connecting to astech web page ; optional ; default 8080
  • AST_MM_PORT=[number] ; port number for joining MegaMek games ; optional ; default 2346
  • AST_MM_VERSION=[A.B.C.D...] ; MegaMek version ; mandatory ; no default
  • AST_USER=username ; optional ; default kerensky
  • AST_PASS=password ; optional ; default sldf

HOW TO RUN WITH SOME SECURITY

Modify step 4 to AST_MM_VERSION=0.49.19.1 AST_MM_PORT=2346 AST_USER=otherusername AST_PASS=SeCuRePaSsWoRd python3 astech.py

You need:

  • public IP address,
  • a proper domain,
  • some sort of http proxy, like Nginx,
  • SSL certificate, possibly from Let's Encrypt.

Sample Nginx vhost configuration is included as app/nginx/sample.conf.


HOW IT LOOKS

It is a little different now, but not much.

login page index page files page options page

About

Web frontend for dedicated MegaMek server.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published