Premiers pas avec Docker avec VS Code

Cible

Docker installé Utilisez Docker pour la première fois.

supposition

La ligne de commande peut être utilisée VSCode installé

À propos de cet article

Dans le flux d'apprentissage général de Docker, tout en apprenant la commande docker, nous comprendrons le concept d'images et de conteneurs, puis passerons à docker-compose.

Dans cet article, je vais omettre l'explication des concepts tels que les images et les conteneurs, et remplacer les commandes par l'extension vscode. Ce faisant, vous apprendrez au minimum la commande docker-compose et la déplacerez rapidement pour comprendre Docker pratiquement.

Objectif de cet article

Vous pouvez maintenant utiliser certaines commandes docker-compose. Vous pourrez créer un environnement d'exécution pour nodejs.

Construction de l'environnement VS Code

スクリーンショット 2020-09-14 13.18.11.jpg

スクリーンショット 2020-09-13 19.36.04.png

Installez-le à l'avance.

Créer un environnement nodejs

Tout d'abord, créez un dossier appelé nodejssample dans un emplacement approprié. Ce nom est approprié.

Ensuite, créez un fichier appelé docker-compose.yml directement sous ce dossier comme indiqué ci-dessous.

docker-compose.yml


version: "3"
services:
    node: 
        image: node:14.10
        volumes: 
            - .:/project
        tty: true
        working_dir: /project
        command: bash

Ce contenu sera expliqué plus tard.

Et créez app.js dans la même hiérarchie

app.js


const main = () => {
    console.log("hello node!");
}

main();

スクリーンショット 2020-09-13 19.42.35.png

OK si cela arrive

Vérifiez ensuite une fois l'état actuel de Docker.

Si vous sélectionnez la marque Docker sur le côté gauche de VS Code, vous verrez l'écran ci-dessous.

スクリーンショット 2020-09-13 19.43.38.png

Cet écran peut ne pas apparaître si Docker n'est pas en cours d'exécution ou si vous avez déjà exécuté Docker pour une raison quelconque.

Après confirmation, transférez la commande comme suit à l'emplacement de docker-compose.yml sur la ligne de commande.

Commande pour démarrer l'environnement virtuel

docker-compose up -d

Ensuite, le téléchargement commencera et l'écran ressemblera à celui ci-dessous.

nodejssample $ docker-compose up -d
Creating network "nodejssample_default" with the default driver
4f250268ed6a: Pull complete1b49aa113642: Pull complete
c159512f4cc2: Pull complete8439168fd8dc: Pull complete55abbc6cc158: Pull completee5c5821cd889: Pull complete5a7679f70bad: Pull completed827e86d1182: Pull complete2484b06a6da1: Pull complete
Digest: sha256:21658666c0eabc9006b279e826e540d20e2c835507347d9c2f3f7dd5820ec9e3
Status: Downloaded newer image for node:14.10
Creating nodejssample_node_1 ... done

Et l'écran de l'onglet Docker est le suivant. スクリーンショット 2020-09-13 19.52.05.jpg Un environnement virtuel créé avec Docker est appelé un conteneur. L'image est pour faire un conteneur.

スクリーンショット 2020-09-14 14.03.23.png

Maintenant que l'environnement virtuel a démarré, exécutons nodejs dans cet environnement virtuel.

スクリーンショット 2020-09-13 19.57.17.png

Cliquez avec le bouton droit sur le conteneur cible> appuyez sur Attack Shell. Ensuite, l'écran suivant apparaîtra.

スクリーンショット 2020-09-13 20.03.04.png C'est l'état à l'intérieur du conteneur.

root@df80b994d93d:/project# ls
app.js  docker-compose.yml
root@df80b994d93d:/project#   

Le même fichier que le projet VS Code est affiché dans la commande ls. Et comme il s'agit d'un conteneur de l'environnement nodejs, vérifiez si nodejs peut être utilisé.

root@df80b994d93d:/project# node -v
v14.10.1

OK si ça sort

Exécutez le fichier app.js préparé.

root@df80b994d93d:/project# node app.js
hello node!

J'ai pu l'exécuter.

Effacez l'environnement virtuel.

L'environnement virtuel est lourd s'il est laissé sans surveillance, alors supprimez-le lorsque vous avez terminé.

スクリーンショット 2020-09-13 20.49.21.png

Effacez l'image.

Pour les images, cela rend docker-compose up -d plus rapide, donc si vous l'utilisez souvent, vous pouvez le laisser.

Si vous ne l'utilisez pas pendant un certain temps, désactivez-le.

スクリーンショット 2020-09-13 20.50.28.png

Vous pouvez désormais créer un environnement virtuel, exécuter des programmes dans l'environnement virtuel et supprimer l'environnement virtuel.

Commentaire

À propos de docker-compose.yml

La syntaxe de base de docker-compose est la suivante

docker-composer la syntaxe


version:Numéro de version.
services:
Nom du service:
Paramètres de service...

La dernière version est la 3 Vous pouvez nommer le service vous-même. Tout est OK.

docker-compose.yml


version: "3" #La dernière version est la 3
services: #C'est corrigé
    node: #Tout va bien, mais comme l'image du nœud est utilisée, le nom du service n'est que nœud.
        image: node:14.10
        volumes: 
            - .:/project
        tty: true
        working_dir: /project
        command: bash

Il existe de nombreux paramètres de service, mais il est préférable de lire la documentation officielle pour plus d'informations.

Référence

Je vais expliquer les éléments de réglage utilisés cette fois un par un.

image Décrit l'image pour créer un conteneur.

.yml


image:Nom de l'image:Nom de la balise

Le nom de la balise peut être considéré comme une version

Il existe diverses images utilisées par Docker sur un site appelé Docker Hub. image du nœud

スクリーンショット 2020-09-14 0.06.37.jpg

C'est le tag utilisé dans cet article

volumes Liez le dossier local au dossier du conteneur.

.yml


        volumes: 
            -Chemin du dossier local:Chemin du dossier du conteneur

Si vous ne le définissez pas, vous ne pourrez pas voir les fichiers placés localement tels que app.js à partir du conteneur.

tty

tty: true

Empêche le conteneur de s'arrêter immédiatement après avoir effectué le traitement spécifié par la commande. Requis lors de l'entrée dans un conteneur avec Attach Shell

working_dir C'est toujours l'endroit pour exécuter la commande. Lorsque vous exécutez Attach Shell, il sera également dans le dossier spécifié ici.

command Traitement à exécuter au démarrage du conteneur. Cette fois, j'ai spécifié bash, donc j'ai l'impression d'ouvrir le terminal et d'attendre.

Il existe divers autres paramètres, donc si vous voyez un autre article Docker et trouvez quelque chose que vous ne savez pas, vous devriez lire la référence.

À propos de docker-compose up -d

Référence

Une commande pour lire docker-compose.yml et télécharger une image si nécessaire pour créer un conteneur.

-d est une option pour démarrer en arrière-plan.

Recommended Posts

Premiers pas avec Docker avec VS Code
Gestion Docker avec VS Code
[Google Cloud] Premiers pas avec Docker
Premiers pas avec Docker pour Mac (installation)
Lombok avec VS Code
Premiers pas avec DBUnit
Premiers pas avec Ruby
Premiers pas avec Swift
Premiers pas avec Doma-Transactions
Premiers pas avec Java Collection
Formater Ruby avec VS Code
Bonjour tout le monde avec VS Code!
Premiers pas avec JSP et servlet
Premiers pas avec les modules Ruby
Premiers pas avec Java_Chapitre 5_Exercices pratiques 5_4
Programmation Spring Boot avec VS Code
Construire Java avec Mac vs Code
Premiers pas avec Git Hub Container Registry au lieu de Docker Hub
Résumé des procédures de développement dans un conteneur Docker avec VS Code
Création d'un environnement haskell avec Docker + VS Code sur Windows10 Home
Premiers pas avec Doma-Criteria API Cheet Sheet
Préparer l'environnement de développement Java avec VS Code
Premiers pas avec Ruby pour les ingénieurs Java
Introduction au test de paramétrage dans JUnit
Essayez d'utiliser Spring Boot avec VS Code
Introduction à Java à partir de 0 Partie 1
Premiers pas avec Ratpack (4) - Routage et contenu statique
Démarrez avec le fonctionnement de JVM GC
Premiers pas avec Language Server Protocol avec LSP4J
Premiers pas avec la création d'ensembles de ressources avec ListResoueceBundle
Découvrez .NET 5 avec Docker et Visual Studio Code
Premiers pas avec Java_Chapter 8_A propos des "Instances" et des "Classes"
Liens et mémos pour démarrer avec Java (pour moi-même)
Premiers pas avec Doma-Using Projection avec l'API Criteira
Premiers pas avec les sous-requêtes utilisant Doma avec l'API Criteria
Premiers pas avec Java 1 Assembler des éléments similaires
En utilisant Gradle avec VSCode, compilez Java → exécutez
Premiers pas avec Kotlin à envoyer aux développeurs Java
Peut-être que ça marche! Commençons avec Docker!
Premiers pas avec Doma-Using Joins avec l'API Criteira
Créer un environnement Spring Boot avec Windows + VS Code
Premiers pas avec Doma - Introduction à l'API Criteria
Essayez de déboguer un programme Java avec VS Code
Créer un environnement de développement Java avec VS Code
J'ai essayé de démarrer avec Gradle sur Heroku
Créer un environnement de développement Java avec VS Code sur Mac
Liez le journal Docker à AWS CloudWatch et surveillez en temps réel avec VS Code
Lancez MariaDB avec Docker
Exploser Docker avec WSL2
Utiliser Puphpeteer avec Docker
Créer un environnement de débogage Ruby avec VS Code de Windows 10