The successor of acweb! accweb lets you manage your Assetto Corsa Competizione servers via a nice and simple web interface. You can start, stop and configure server instances and monitor their status.
- Features
- Changelog
- Installation
- Docker
- Backup
- Contribute and support
- Build release
- Links
- License
- Screenshots
- create and manage as many server instances as you like
- configure your instances in browser
- start/stop instances and monitor their status
- view server logs
- copy server configurations
- import/export server configuration files
- delete server configurations
- three different permissions: admin, mod and read only (using three different passwords)
- status page for non logged in users
- easy setup
- no database required
- simple configuration using environment variables
- fixed saving/loading assist rules
- fixed assist rules import
- fixed name of ballast to ballastKg in entrylist
- better default configuration
- fixed exporting configuration if server name contains invalid characters for filenames
- added automatic generation of private/public token files
- switched to yaml configuration instead of environment variables
- new design
- minor changes to the global view
- corrections of values for "formationLapType"
- added parameter "simracerWeatherConditions" in event.json
- added parameter "isFixedConditionQualification" in event.json
- added "bop.json"
- added "assistRules"
IMPORTANT: You will have to delete the servers already created in order to create new ones!
accweb is installed by extracting the zip on your server, modifing the YAML configuration file to your needs and starting it in a terminal.
- download the latest release from the release section on GitHub
- extract the zip file on your server
- edit the
config.yml
to match your needs - open a terminal
- change directory to the accweb installation location
- start accweb using
./accweb
on Linux andaccweb.exe
on Windows - leave the terminal open (or start in background using screens on Linux for example)
- visit the server IP/domain and port you've configured, for example: http://example.com:8080
I recommend to setup an SSL certificate, but that's out of scope for this instructions. You can enable a certificate inside the config.yml
.
accweb should generate the key files for authentication on its own, but in case that doesn't work you can do it manually.
To generate the RSA key pair, you can use the gen_rsa_keys.sh
on Linux or install one of the tools available for Windows and run gen_rsa_keys.cmd
.
You can also use an online service which generates RSA key pairs (search for "generate rsa key pair online").
Note that you have to install wine if you're on Linux.
Keep in mind that this docker image doesn't include accserver.exe file, you will have to copy it manually to the /accserver directory inside the container after it started. Check the volumes section for details.
To build the image manually:
- git clone https://github.com/assetto-corsa-web/accweb
cd accweb
docker build --pull --rm -f "Dockerfile" -t accweb:latest "."
An official image is availabe at: https://hub.docker.com/r/kugel/accweb. It can be pulled using: docker pull kugel/accweb
and started by running docker run -it accweb
.
By default this image exposes port 8080 in order to have the web UI working. If you want to run the game server you will need to open the ports manually. For example, if I want to run two server instances I need to open two differents port:
docker run -it accweb -p 8080:8080 -p 2600:2600 -p 2601:2601
This will allow you to run a server on 2600 and 2601 port.
The docker-compose file at the root of the git repository can be used to deploy accweb. It comes with pre-defined env variables and volumes. Keep in mind that this compose file is not secured. Please follow the documentation and check the recommandations.
Here is the list of docker volumes and their purpose:
accweb
: Contains the accweb projectaccserver
: Must contain theaccserver.exe
. It has to be put there manually as we can't bundle it inside dockersslcerts
: This volume is dedicated to SSL certificates
Variable name | Description | Default value |
---|---|---|
ACCWEB_HOST | ACC web server host URL | 0.0.0.0:8080 (not secure) |
ACCWEB_ENABLE_TLS | Enable or disable SSL | false (not secure) |
ACCWEB_CERT_FILE | Certificate file location | /sslcerts/certificate.crt |
ACCWEB_PRIV_FILE | Certificate key location | /sslcerts/private.key |
ACCWEB_ADMIN_PASSWORD | Admin password | weakadminpassword |
ACCWEB_MOD_PASSWORD | Moderator password | weakmodpassword |
ACCWEB_RO_PASSWORD | Read only password | weakropassword |
ACCWEB_LOGLEVEL | App log level | info |
ACCWEB_CORS | Default CORS origin | "*" (accept all sources) |
To backup your files, copy and save the config
directory as well as the config.yml
. The config
directory can later be placed inside the new accweb version directory and you can adjust the new config.yml
based on your old configuration (don't overwrite it, there meight be breaking changes).
If you like to contribute, have questions or suggestions you can open tickets and pull requests on GitHub.
All Go code must have been run through go fmt. The frontend and backend changes must be (manually) tested on your system. If you have issues running it locally open a ticket. You can use the dev.sh
and gen_rsa_keys.sh
scripts to start accweb on your computer (on Linux).
To build a release, execute the build_release.sh
script (on Linux) or follow the steps inside the script. You need to pass the build version as the first parameter. Example:
./build_release.sh 1.2.3
This will create a directory accweb_1.2.3
containing the release build of accweb. This directory can be zipped, uploaded to GitHub and deployed on a server.
MIT