Maison >développement back-end >Golang >golang déployé sur docker
Dans l'environnement de développement logiciel rapidement itératif d'aujourd'hui, le processus de déploiement d'applications est de plus en plus automatisé et standardisé. L’un des principaux avantages de l’utilisation de la technologie des conteneurs est que les applications peuvent être déployées dans différents environnements et que leur environnement d’exploitation peut rester cohérent. Docker est une technologie de conteneurisation populaire qui fournit un environnement d'exécution standardisé pour les applications afin que les applications puissent être facilement déployées sur différents systèmes. Dans cet article, nous explorerons comment déployer des applications Golang dans des conteneurs Docker.
Tout d'abord, nous devons créer une application Golang. Nous utiliserons un exemple de programme simple pour montrer comment l'emballer dans un conteneur Docker. Créez un fichier appelé "hello.go" avec le contenu suivant :
package main import "fmt" func main() { fmt.Println("Hello, World!") }
Exécutez le programme sur votre ordinateur local et vérifiez qu'il affiche correctement "Hello, World !".
Ensuite, nous devons créer un Dockerfile qui définira comment construire notre conteneur Docker. Créez un fichier appelé "Dockerfile" dans le répertoire de votre application et copiez-y le contenu suivant :
# 构建运行时镜像 FROM golang:1.16-alpine3.13 # 添加应用程序代码 ADD . /go/src/github.com/yourusername/hello # 将工作目录设置为应用程序代码目录 WORKDIR /go/src/github.com/yourusername/hello # 构建应用程序 RUN go build -o app # 将运行时容器暴露在8080端口 EXPOSE 8080 # 设置容器启动指令 CMD ["./app"]
Expliquez ce Dockerfile. Tout d'abord, nous utilisons l'image golang:1.16-alpine3.13 dans le Dockerhub officiel de golang comme conteneur de base pour garantir que nous disposons d'un environnement Golang approprié. Nous ajoutons ensuite notre code d'application au conteneur et définissons le répertoire de travail sur notre répertoire d'application. Ensuite, nous construisons l’application en la nommant « app ». Enfin, nous exposons le conteneur sur le port 8080 et spécifions la commande à exécuter au démarrage du conteneur.
Nous sommes maintenant prêts à créer l'image Docker. Exécutez la commande suivante dans le répertoire de votre application :
docker build -t hello .
Cette commande construira une image Docker nommée "hello" en utilisant le Dockerfile que nous avons créé précédemment. Pendant le processus de construction, Docker exécutera chaque commande du Dockerfile et la stockera dans l'image. Les temps de construction varient en fonction de la vitesse de votre réseau et des performances de votre ordinateur local. Une fois la construction terminée, vous pouvez vérifier si la nouvelle image a été créée à l'aide de la commande suivante :
docker images
Vous devriez pouvoir voir l'image nommée "hello".
La dernière étape consiste à déployer notre application dans le conteneur Docker et à l'exécuter. Exécutez le conteneur Docker à l'aide de la commande suivante :
docker run -p 8080:8080 hello
Cette commande démarrera un conteneur Docker nommé "container" en utilisant l'image "hello" que nous venons de créer. L'option "-p" mappe le port du conteneur 8080 au port de l'hôte 8080 afin que nous puissions y accéder depuis le navigateur de l'hôte. Après avoir exécuté le conteneur, vous devriez pouvoir accéder à « http://localhost:8080 » dans un navigateur Web sur la machine hôte et voir la sortie « Hello, World !
Résumé
Dans cet article, nous avons montré comment déployer une simple application Golang dans un conteneur Docker. De la création d'une application Golang à la création d'une image Docker en passant par l'exécution d'un conteneur Docker, toutes les étapes sont expliquées en détail dans cet article. Espérons que cet article sera utile aux développeurs qui cherchent comment déployer leurs applications Golang dans des conteneurs Docker.
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!