Maison  >  Article  >  Opération et maintenance  >  Comment utiliser Docker pour l'intégration continue et le déploiement continu de conteneurs sous Linux ?

Comment utiliser Docker pour l'intégration continue et le déploiement continu de conteneurs sous Linux ?

WBOY
WBOYoriginal
2023-07-30 23:30:281182parcourir

Comment utiliser Docker pour l'intégration continue et le déploiement continu de conteneurs sous Linux ?

Avec le développement continu de l'industrie du développement logiciel, l'intégration continue et le déploiement continu sont devenus des maillons importants dans le processus de développement logiciel moderne. En tant que technologie de virtualisation légère, Docker nous offre un moyen pratique de mettre en œuvre le déploiement d'applications conteneurisées. Sur les systèmes Linux, nous pouvons utiliser Docker pour effectuer une intégration continue et un déploiement continu de conteneurs. Cet article explique comment utiliser Docker pour implémenter ce processus.

Tout d'abord, nous devons installer Docker. Ce qui suit prend le système Ubuntu comme exemple :

sudo apt-get update
sudo apt-get install docker-ce

Une fois l'installation terminée, vous pouvez utiliser la commande suivante pour vérifier si l'installation de Docker a réussi :

docker version

Ensuite, nous nous devons créer une image Docker pour construire notre application. Nous pouvons utiliser Dockerfile pour définir des règles de création d'images. Voici un exemple de Dockerfile :

FROM ubuntu:latest

# 安装所需的软件包
RUN apt-get update && 
    apt-get install -y software-properties-common && 
    add-apt-repository ppa:ondrej/php && 
    apt-get update && 
    apt-get install -y php7.2-cli

# 复制应用程序的代码到镜像中
COPY . /app

# 在容器中设置工作目录
WORKDIR /app

# 安装依赖
RUN composer install

# 定义容器启动时执行的命令
CMD ["php", "index.php"]

Créez un fichier nommé Dockerfile dans un répertoire contenant le code de l'application et copiez-y le code ci-dessus. Ensuite, exécutez la commande suivante dans ce répertoire pour créer l'image Docker :

docker build -t myapp .

La commande ci-dessus regroupera le code dans ce répertoire et le construira dans une image Docker nommée myapp.

Ensuite, nous devons créer un script pour l'intégration continue et le déploiement continu. Voici un exemple de script :

#!/bin/bash

# 拉取最新的代码
git pull origin master

# 停止并移除现有的容器
docker stop myapp
docker rm myapp

# 构建并运行新的容器
docker build -t myapp .
docker run -d --name myapp myapp

Le script extrait d'abord le dernier code via Git, puis arrête et supprime le conteneur existant. Ensuite, il reconstruit l'image et exécute un conteneur nommé myapp.

Enregistrez le script ci-dessus dans un fichier nommé déployer.sh et exécutez la commande suivante pour donner au script les autorisations d'exécution :

chmod +x deploy.sh

Enfin, nous pouvons utiliser un outil d'intégration continue (tel que Jenkins) pour exécuter le script régulièrement afin d'obtenir Objectifs d’intégration continue et de déploiement continu. À l'aide d'un tel outil, nous pouvons configurer des tâches planifiées ou exécuter automatiquement des scripts basés sur des déclencheurs de soumission de code pour réaliser des processus de déploiement de conteneurs automatisés.

Pour résumer, nous pouvons utiliser Docker pour réaliser une intégration continue et un déploiement continu de conteneurs. En créant des images Docker et en utilisant les scripts associés, nous pouvons facilement créer et déployer des applications conteneurisées. Cette méthode est non seulement pratique et rapide, mais améliore également la fiabilité et la testabilité de l'application. Par conséquent, l'utilisation de Docker pour l'intégration continue et le déploiement continu de conteneurs est devenue une pratique importante dans l'industrie actuelle du développement de logiciels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn