Docker
Docker est une plate-forme logicielle qui vous permet de concevoir, tester et déployer des applications rapidement. Docker intègre les logiciels dans des unités normalisées appelées conteneurs, qui rassemblent tous les éléments nécessaires à leur fonctionnement, dont les bibliothèques, les outils système, le code et l'environnement d'exécution.
(source)Testez gratuitement les applications intégrées à mon docker !
Merci de respecter le travail ;-)
installation de docker sur debian 10
Configuration du VPS :
Modification du mot de passe (root) :
# passwd
Création d'un Utilisateur du VPS :
# adduser lefebvre
Configuration de la connexion SSH :
# nano /etc/ssh/sshd_config
Modification du fichier des dépots :
# nano /etc/apt/sources.list
Redéfinir la langue du systèmes :
# dpkg-reconfigure locales
Mise à jour des dépots :
# apt update
Installation des net-tools et de Wget :
# apt install net-tools wget
installation de Htop (gestionnaire de tâche) :
# apt install htop
Installation de docker :
installation du certificat :
# apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
installation de la clé ssl :
# curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
ajout du dépot pour docker :
# add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
mise à jour des dépots :
# apt-get update
installation de docker :
# apt-get install docker-ce docker-ce-cli containerd.io
Démarrage de Dcoker :
# systemctl start docker
Activation de Docker :
# systemctl enable docker
Installation de docker compose
# sudo curl -o /usr/local/bin/docker-compose -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)"
# sudo chmod +x /usr/local/bin/docker-compose
Vérifier que l’installation de Docker Compose a bien fonctionné avec la commande suivante celle-ci affiche sa version :
# docker-compose -v
Supprimer Docker Compose
# rm /usr/local/bin/docker-compose
Supprimer un conteneur
Chercher le numéro de conteneur
# docker ps -a
Arrêter le conteneur :
# docker stop 154r782a951a
Supprimé le conteneur
# docker rm 154r782a951a
faire le ménage dans les conteneurs et images docker
Supprimer les volumes associés à un conteneur
docker rm -v $(docker ps -aqf status=exited)
Supprimer les images inutiles jamais utilisé pour créer un conteneur.
docker rmi $(docker images -qf dangling=true)
Souvent indispensable après un docker pull.
Supprimer les volumes inutilisés
docker volume rm $(docker volume ls -qf dangling=true)
accéder au conteneur pour apporter des modifications
Trouvez le numéro du conteneur avec la commande :
# docker ps -a
Accédez au conteneur avec la commande :
# docker exec -it (numéro du conteneur) bash
Redémarrage automatique de vos applications
après un redémarrage du serveur ou arrêt inattendu :
Trouvez le numéro du conteneur avec la commande :
# docker ps -a
Lancez la commande de redémarrage automatique :
docker update --restart always Numéro_Conteneur (redémarrage automatique de l'application à faire sur toute les apps)
Exemple : docker update --restart always 154r782a951a
Installation des applications sur Docker
Installation de NGINX sur Docker
Vous pouvez modifier le nom du conteneur avec la commande " --name NOM", modifier le port avec "-p 8090:80"
# docker run --name some-nginx -d -p 8090:80 nginx
# docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
# apt update
Accéder au conteneur pour modifier la page index.html
trouvez le numéro du conteneur avec la commande :
# docker ps -a
Accédez au conteneur avec la commande :
# docker exec -it (numéro du conteneur) bash
Modifier la page index html dans /usr/share/nginx/html/ avec la commande (installez nano au besoin # apt install nano) :
# nano /usr/share/nginx/html/index.html
Installation de Apache 2 sur Docker
Vous pouvez modifier le nom du conteneur avec la commande " --name NOM", modifier le port avec "-p 8090:80"
Installez Apache 2
# docker run --name apache -d -p 8091:80 httpd:2.4
Cherchez le numéro du conteneur :
# docker ps -a
La page par défaut de Apache ce trouve dans le répertoire suivant :
./htdocs/index.html
Modifiez la page avec la commande :
# nano ./htdocs/index.html
Installation de GHOST sur Docker
Vous pouvez modifier le nom du conteneur avec la commande " --name NOM", modifier le port avec "-p 8090:80"
Installez Ghost
docker run -d --name some-ghost -e url=http://localhost:8092 -p 8092:2368 ghost
Accéder à ghost avec le lien suivant http://IP_de_votre_serveur:8092 ou http://Nom_de_votre_serveur:8092
exemple : http://labo.info-tuto.ovh:8086
Installation de WORDPRESS sur Docker
Installer docker compose pour effectuer cette installation
Déplacez vous dans le dossier Utilisateur, créez un dossier "wordpress" et déplacez-vous sur celui-ci :
# cd /home/Utilisateur/
# mkdir wordpress
Dans le répertoire "wordpress" créer le fichier suivant :
# nano docker-compose.yml
Editer le fichier .yml comme ci-dessous, apportez les modifications nécessaires pour la sécurité :
version: '2'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8085:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
Executer le fichier avec
# docker-compose up -d
Accéder à Wordpress avec le lien suivant http://IP_de_votre_serveur:8085 ou http://Nom_de_votre_serveur:8094
exemple : http://labo.info-tuto.ovh:8086
Installation de NetData sur docker
Netdata est un outil open source pour visualiser et surveiller les mesures en temps réel, optimisé pour accumuler tous les types de données, tels que l'utilisation du processeur, l'activité du disque, les requêtes SQL , les visites sur un site Web, etc.
accédez à NetData avec : http://Nom_d'hôte:19999/ .
# docker run -d --name=netdata \
-p 19999:19999 \
-v /proc:/host/proc:ro \
-v /sys:/host/sys:ro \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
--cap-add SYS_PTRACE \
--security-opt apparmor=unconfined \
netdata/netdata
Enregistrez-vous, renseignez les champs, puis copier le texte proposé (sudo au besoin) pour l'ajouter à votre conteneur, accédez à votre conteneur avec la commande : (connaître le numero de conteneur : # docker ps -a)
# docker exec -it (numéro conteneur) bash
netdata-claim.sh -token=k1YaJQElKB9mIZXxUAE6HCRGtrN8uW_OTzZFdF7PnSKtnTbPsuV9kkRv2nkOS29slbC670TOEjAM04zXlgKyHf3YSSxrAfTYoLTZxZFFsves94IFGdxMYidxE3LvazdJCc9IpO0 -rooms=7bb1e00a-a639-4b6e-bee6-2d4e63d42c04 -url=https://app.netdata.cloud
Installation de Drupal
Drupal est un logiciel qui permet aux individus comme aux communautés d'utilisateurs de publier facilement, de gérer et d'organiser un vaste éventail de contenus sur un site web.
Modifier les **** à votre convenance.
vous pouvez modifier le port 3306 ou 8080 comme ceci 3315:3306 ou 8090:80 (redirection de port)
"drupal-mysql" est le nom du conteneur (hôte) de votre base de données, il vous sera demandez pour la fin de l'installation via la page web, pour y accéder taper : http://IP_d'hôte:8080/
# docker run --name drupal-mysql -e MYSQL_ROOT_PASSWORD=**** -e MYSQL_DATABASE=**** -e MYSQL_USER=***** -e MYSQL_PASSWORD=**** -p 3306:3306 -d mysql:5.7
# docker run --name drupal-test -p 8080:80 --link drupal-mysql:mysql -d drupal
Installation de Joomla!
Modifier les **** à votre convenance.
vous pouvez modifier le port 3306 ou 8080 comme ceci 3315:3306 ou 8090:80 (redirection de port)
"joomla-mysql" est le nom du conteneur (hôte) de votre base de données, il vous sera demandez pour la fin de l'installation via la page web, pour y accéder taper : http://IP_d'hôte:8080/
# docker run --name joomla-mysql -e MYSQL_ROOT_PASSWORD=**** -e MYSQL_DATABASE=**** -e MYSQL_USER=**** -e MYSQL_PASSWORD=**** -p 3306:3306 -d mysql:5.5
# docker run --name joomla --link joomla-mysql:mysql -p 8080:80 -d joomla
Installation de OSticket
Modifier les **** à votre convenance.
vous pouvez modifier le port 8080 comme ceci 8090:80 (redirection de port)
# docker run --name osticket_mysql -d -e MYSQL_ROOT_PASSWORD=***** -e MYSQL_USER=***** -e MYSQL_PASSWORD=***** -e MYSQL_DATABASE=***** mysql:5
# docker run --name osticket -d --link osticket_mysql:mysql -p 8080:80 campbellsoftwaresolutions/osticket
N'oubliez pas de modifier le mot de passe de l'administrateur !