By | 14 août 2018

[Gandi] [IaaS] Doom sous Docker

Serveur :

Localisation : Paris, France (FR-SD5)
Cœur(s) CPU : 2
RAM : 1024 Mo
Disque : 10 Go
 
Système d'exploitation : Debian 9
Nom du disque système : sysdisk02doom
Nom (Hostname) : 217.70.189.119
Identifiant administrateur : admin
Adresse ipv4 : 217.70.189.119

I/ Configuration du serveur.

1/ Connexion au serveur.

➜  ~ ssh admin@217.70.189.119                                    
admin@217.70.189.119's password: 
Linux server01doom 4.9.0-4-amd64 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64
...
admin@server01doom:~$ 

2/ Connexion à l’utilisateur ‘root‘.

admin@server01doom:~$ su
Password: 
root@server01doom:/home/admin# 

3/ Mise-à-jour du système d’exploitation.

root@server01doom:/home/admin# apt-get update
root@server01doom:/home/admin# apt-get upgrade

4/ Installation des paquets de base.

root@server01doom:/home/admin# apt-get install vim screen mc locales-all

5/ Fichier de configuration des locales.

Ouvrir :

/etc/locale.gen

Chercher :

# fr_FR.UTF-8 UTF-8

Remplacer par :

fr_FR.UTF-8 UTF-8

Action :

# locale-gen

6/ Initialisation des locales.

root@server01doom:/home/admin# export LANGUAGE="fr_FR.UTF-8"
root@server01doom:/home/admin# export LANG="fr_FR.UTF-8"

7/ Configuration des locales.

root@server01doom:/home/admin# dpkg-reconfigure locales locales-all
Configuring locales : 

fr_FR.UTF-8 UTF-8	
< Accepter>

fr_FR.UTF-8
< Accepter>

8/ Vérification.

root@server01doom:/home/admin# locale
LANG=fr_FR.UTF-8
LANGUAGE=fr_FR.UTF-8
LC_CTYPE=fr_LU.UTF-8
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=

II/ Installation de Docker.

1/ Installation des paquets de base.

root@server01doom:/home/admin# apt-get install apt-transport-https ca-certificates wget software-properties-common

2/ Ajout de la clé.

root@server01doom:/home/admin# wget https://download.docker.com/linux/debian/gpg 
root@server01doom:/home/admin# apt-key add gpg
OK

3/ Téléchargement du dépôt Docker.

root@server01doom:/home/admin# echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee -a /etc/apt/sources.list.d/docker.list
deb [arch=amd64] https://download.docker.com/linux/debian stretch stable

4/ Mise-à-jour des dépôts.

root@server01doom:/home/admin# apt-get update

5/ Installation de Docker en version ‘Community Edition’.

root@server01doom:/home/admin# apt-get install docker-ce

6/ Vérification.

root@server01doom:/home/admin# docker --version
Docker version 18.06.0-ce, build 0ffa825

III/ Installation de Doom.

1/ Installation des paquets de base.

root@server01doom:/home/admin# apt-get install git unzip

2/ Configuration de l’utilisateur.

root@server01doom:/home/admin# usermod -a -G docker admin
root@server01doom:/home/admin# chmod 666 /var/run/docker.sock

3/ Sortir de l’utilisateur ‘root‘.

root@server01doom:/home/admin# exit
exit
admin@server01doom:~$ 

4/ Création du répertoire de travail.

admin@server01doom:~$ mkdir -p JEUX/DOOM/Docker
admin@server01doom:~$ mkdir -p JEUX/DOOM/Wads

5/ Installation de Freedoom.

admin@server01doom:~$ cd JEUX/DOOM/Wads/
admin@server01doom:~/JEUX/DOOM/Wads$ wget https://github.com/freedoom/freedoom/releases/download/v0.11.3/freedoom-0.11.3.zip
admin@server01doom:~/JEUX/DOOM/Wads$ cp freedoom-0.11.3/freedoom2.wad doom2.wad


<h3>6/ Décompression de l'archive 'FreeDoom'.</h3>

<pre>
admin@server01doom:~/JEUX/DOOM/Wads$ unzip freedoom-0.11.3.zip 
admin@server01doom:~/JEUX/DOOM/Wads$ cd ../Docker/
admin@server01doom:~/JEUX/DOOM/Docker$ 

7/ Téléchargement de l’image Docker.

admin@server01doom:~/JEUX/DOOM/Docker$ git clone https://gitlab.com/frozenfoxx/docker-zandronum.git
Clonage dans 'docker-zandronum'...
remote: Enumerating objects: 75, done.
remote: Counting objects: 100% (75/75), done.
remote: Compressing objects: 100% (42/42), done.
remote: Total 75 (delta 29), reused 72 (delta 26)
Dépaquetage des objets: 100% (75/75), fait.
admin@server01doom:~/JEUX/DOOM/Docker$ 
admin@server01doom:~/JEUX/DOOM/Docker$ cd docker-zandronum
admin@server01doom:~/JEUX/DOOM/Docker/docker-zandronum$ 

8/ Construction de l’image Docker.

admin@server01doom:~/JEUX/DOOM/Docker/docker-zandronum$ docker build -t frozenfoxx/zandronum:latest .
...
Successfully built 3442b27be679
Successfully tagged frozenfoxx/zandronum:latest
admin@server01doom:~/JEUX/DOOM/Docker/docker-zandronum$ 

9/ Lancement de Zandronum sous Docker.

admin@server01doom:~/JEUX/DOOM/Docker/docker-zandronum$ docker run -it --rm -p 8080:8080 -v /home/admin/JEUX/DOOM/Wads:/wads --name=zandronum  frozenfoxx/zandronum:latest
...
P_Init: Init Playloop state.
ParseSBarInfo: Loading default status bar definition.
ParseSBarInfo: Loading custom status bar definition.
===========================================================================
This is Freedoom, the free content first person shooter.

Freedoom is freely redistributable under the terms of the modified BSD
license. Check out the Freedoom website for more information:

    https://freedoom.github.io/
============================================================================
D_CheckNetGame: Checking network game status.
player 1 of 1 (1 nodes)
Initializing network subsystem.
IP address 172.17.0.2:10667
UDP Initialized.
Resolution: 1280 x 720
Starting MIDI playback failed

10/ Visualisation.

http://217.70.189.119:8080/

11/ Capture d’écran.

12/ Liens.

https://gitlab.com/frozenfoxx/docker-zandronum
https://www.docker.com/
http://novnc.com/info.html
https://zandronum.com/

Zandronum sous Docker avec noVNC