- look into
tcp_syncookies
/possible SYN flooding log message - tee errors to stdout/log file as well as the GCP logger
- see about turning off unattended-upgrade when preemptible server runs up
- bin Ubuntu for Debian
- figure out container volume settings: https://docs.docker.com/compose/compose-file/compose-file-v3/
- troubleshoot Prometheus
- https://prometheus.io/docs/prometheus/latest/installation/#using-docker
- https://prometheus.io/docs/guides/cadvisor/
- make sure Prometheus is running as the
nobody
user per the Dockerfile
Run some basic analysis of /played.
WIP; see:
-
- Graftorio addon building/troubleshooting guide:
-
consider setting this flag
-
export CLOUDSDK
before running any other scripts -
For both Docker (Factorio) & Docker Compose (Graftorio) use
yq
to setrestart=no
yq eval --inplace '(.services.*.restart = "no") | (.services.*.restart style="double")' ./docker-compose.yml
-
- Graftorio addon building/troubleshooting guide:
Factorio leans quite heavily on a single thread. Some calculations can be handled on a second thread, but single-highest core speed is key, and Google Cloud instances top out at around 3.2~3.6 GHz.
- systemd Services
- Writing a systemd Service in Python
- Use systemd to Start a Linux Service at Boot
- How to configure systemd to start a service automatically after a crash in Linux
Wire all of the logs up to Stackdriver including Docker
Further reading:
Not every user will have purchased a domain to use in such a way.
Currently hard-coded to Graftorio and that's about it. This looks pretty good!
- Move from
afex/graftorio
to https://github.com/TheVirtualCrew/graftorio
factorio-server@${PROJECT_ID}.iam.gserviceaccount.com
won't exist by default in a new GCP project.