Skip to content

Docker container to backup terraria-docker or tmodloader1.4-docker

License

Notifications You must be signed in to change notification settings

PassiveLemon/terraria-backup-docker

Repository files navigation

Side-car Docker container to backup terraria-docker or tmodloader1.4-docker.

Warning

This is container alone is NOT a substitute for a proper backup solution. If losing data would cause you trouble, please, take proper care of it.

Quick setup

  1. Mount your Terraria world directory.
  2. Run the container: (Make sure to modify any values that you need.)
  • docker run -d --name terraria-backup -v /opt/TerrariaServer/Worlds/:/opt/terraria-backup/worlds/ passivelemon/terraria-backup-docker:latest

Setting up the container

This will loop over all worldnames in the world directory and back up the world files associated with that name. The backups are placed in a Backups subdirectory in the same directory as the world files.

Environment variables

Variable Options Default Details
CRONTIME crontime (* * * * *) 0 1 * * * (Every day at 1 AM) The cron time that the container follows for the backup schedule.
STARTTRIGGER boolean 0 Whether to run the backup upon container start.
METHOD cp tar zip 7zip cp The method of storage to use when backing up. More details below.
ROTATIONS integer 5 How many backups to rotate through.
Method Function
cp Copy to backup location. This is the default.
tar Archive (with gzip) to backup location.
zip Zip to backup location.
7zip 7Zip to backup location.

Docker run

docker run -d --name (container name) -v (worlds directory):/opt/terraria-backup/config/ passivelemon/terraria-backup-docker:latest

Docker Compose

version: '3.3'
services:
  terraria-backup-docker:
    image: passivelemon/terraria-backup-docker:latest
    container_name: terraria-backup-docker
    volumes:
      - (worlds directory):/opt/terraria-backup/worlds/

Examples

Docker run

docker run -d --name terraria-backup-docker -v /opt/terrariaServer/Worlds/:/opt/terraria-backup/config/ -e METHOD="tar" -e STARTTRIGGER="1" passivelemon/terraria-backup-docker:latest

Docker compose

version: '3.3'
services:
  terraria-backup-docker:
    image: passivelemon/terraria-backup-docker:latest
    container_name: terraria-backup-docker
    volumes:
      - /opt/terrariaServer/Worlds/:/opt/terraria-backup/worlds/
    environment:
      METHOD: 'tar'
      STARTTRIGGER: '1'