GithubHelp home page GithubHelp logo

wallopthecat / docker-arma3-exile-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hasable/docker-arma3-exile

0.0 0.0 0.0 13.37 MB

Run Exile Vanilla Server in Docker image

License: GNU General Public License v3.0

Shell 87.58% Smarty 12.42%

docker-arma3-exile-1's Introduction

Exile

Provides a default Exile server.

How to build this image?

As usual :

	docker build -t <image name> .

As Exile needs a database to run, it's possible to customize database credentials at built time :

docker build \\
	--build-arg DATABASE_HOST=<host> \
	--build-arg DATABASE_NAME=<name> \
	--build-arg DATABASE_USER=<user> \
	--build-arg DATABASE_PASSWORD=<password> \
	 -t <image name> .

How to use this image?

First run only

You will need first a database to run Exile.

First create a volume :

docker volume create exile-database-content

Then use docker to populate volume:

docker pull mysql/mysql-server:5.7.19-1.1.1
docker run --name arma-3-exile-database -v exile-database-content:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=<your root password> -d mysql/mysql-server:5.7.19-1.1.1 --sql-mode=ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Connect to database and run scripts :

(winpty) docker exec -it arma-3-exile-database mysql -u root -p
create database if not exists <database_name>;
create user '<database_user>'@'%' identified by '<database_password>';
grant all privileges on database_name.* to 'database_user'@'%';
flush privileges;

Then copy and paste Exile SQL database initialisation file in console, then type "Exit".

Nominal mode

Run the previously created database :

docker run --name <database container name>
	-v <data directory>:/var/lib/mysql
	-e MYSQL_ROOT_PASSWORD=<your password>
	-d mysql/mysql-server:5.7.19-1.1.1
	--sql-mode=ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Run exile image, linked to the database :

docker run --name <exile container name>  \
	--link <database container name>:mysql \
	-p 2302:2302/udp -p 2303:2303/udp -p 2304:2304/udp -p 2305:2035/udp \
	-d <image name>

## Custom configuration

```bash
docker run --name <exile container name> \
	--mount src=<yourVolume>,target=/opt/arma3/conf \
	-p 2302:2302/udp \
	-p 2303:2303/udp \
	-p 2304:2304/udp \
	-p 2305:2305/udp \
	-d <exile image name> \
	-config=/opt/arma3/conf/server.cfg \
	-cfg=/opt/arma3/conf/basic.cfg

With AdminToolKit (ATK)

You first have to customize your mission and server files according to your needs (see official project ).

Then mount your customized file to replace files embedded :

docker run -it --link exile-mysql:mysql \
  -p 2302:2302/udp -p 2303:2303/udp -p 2304:2304/udp -p 2305:2305/udp \
  -e  EXILE_CONFIG_PASSWORD_COMMAND=<your password> \
  -v <absolute path to file admintoolkit.bikey>:/opt/arma3/keys/admintoolkit.bikey \
  -v <absolute path to directory AdminToolkitServer>:/opt/arma3/@AdminToolkitServer \
  -v <absolute path to file Exile.Altis.pbo>:/opt/arma3/mpmissions/Exile.Altis.pbo \
  -t <exile image name> \
  "-config=@ExileServer/config.cfg" \
	"-servermod=@ExileServer;@AdminToolkitServer" \
	"-mod=@Exile;expansion;heli;jets;mark" \
	-autoinit

docker-arma3-exile-1's People

Contributors

hasable avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.