[Note] Créez un environnement Python3 avec Docker dans EC2

Aperçu

Contenu

--Construire un environnement Python à l'aide de Docker sur EC2 d'AWS

environnement

supposition

--EC2 de l'environnement ci-dessus est configuré à partir de votre compte

Matériel de référence

Partiellement extrait de cette zone et rempli.

Fichiers requis

Processus

--Connectez-vous à l'instance EC2 --Mettre à jour les packages et le cache de packages installés sur l'instance

$ sudo yum update -y

--Installez le dernier package Docker Community Edition

$ sudo amazon-linux-extras install docker
$ sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version

Succès si la version est affichée

$ sudo service docker start

--Ajoutez ec2-user au groupe docker et omettez sudo à saisir dans les futures commandes

$ sudo usermod -a -G docker ec2-user
$ docker info

2. Inscrivez-vous sur Dockerhub

--Enregistrer un compte sur Docker Hub - https://hub.docker.com/

--Créer un référentiel

--Connexion à Docker Hub avec EC2

$ docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username:nom du compte
Password:mot de passe
Login Succeeded

3. Créez un fichier pour créer une image Docker

--Créez un Dockerfile.

$ touch Dockerfile

--Modifier le contenu avec vim

$ vim Dockerfile

--Cette fois, créez un conteneur d'image contenant un package pour le fonctionnement automatique de python3 et du navigateur.

Dockerfile



FROM python:3
USER root

RUN apt-get update
RUN apt-get -y install locales && \
localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:ja
ENV LC_ALL ja_JP.UTF-8
ENV TZ JST-9
ENV TERM xterm

#Installer divers packages
RUN apt-get install -y vim less
RUN pip install --upgrade pip
RUN pip install --upgrade beautifulsoup4
RUN pip install --upgrade chromedriver
RUN pip install --upgrade chromedriver-binary
RUN pip install --upgrade datetime
RUN pip install --upgrade pandas
RUN pip install --upgrade pyyaml
RUN pip install --upgrade requests
RUN pip install --upgrade selenium
touch docker-compose.yml

--Cela modifie également le contenu avec vim.

vim docker-compose.yml

docker-compose.yml


version: '3'
services:
  python3:
    restart: always
    build: .
    container_name: 'scrayping'
    working_dir: '/root/'
    tty: true
    volumes:
      - ./opt:/root/opt

3. Créez une image Docker

--Créez une image basée sur le contenu de docker-compose.yml

$ docker-compose build -t {nom du compte dockerhub/Nom de l'image}
$ docker images

REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
shunsukenashiki/scrayping   latest              ed6df28c956e        About an hour ago   1.15GB

C'est bon si c'est fait comme ça

4. Créez un conteneur basé sur l'image Docker

--Créez un conteneur basé sur l'image Docker créée --La raison de l'ajout de "-d" est que le conteneur ne démarrera pas en arrière-plan sans -d.

$ docker run -d --name #{Tout nom de conteneur} -d -it {Nom du REPOSITORY}

--Vérifiez si le conteneur a été créé et démarré. Si vous pouvez le créer, vous avez terminé

$ docker ps

CONTAINER ID        IMAGE                       COMMAND             CREATED             STATUS              PORTS               NAMES
b42460c71e9c        shunsukenashiki/scrayping   "python3"           5 seconds ago       Up 4 seconds                            scrayping

5. Exécutez le conteneur créé

--Exécuter le conteneur créé

$ docker exec -it #{Tout nom de conteneur} bash

--Complet si la version spécifiée est incluse dans le Dockerfile

$ pip3 list

Package         Version
--------------- ---------
beautifulsoup4  4.9.1
certifi         2020.6.20
chardet         3.0.4
chromedriver    2.24.1
DateTime        4.3
idna            2.10
numpy           1.19.1
pandas          1.1.0
pip             20.2.1
python-dateutil 2.8.1
pytz            2020.1
requests        2.24.0
selenium        3.141.0
setuptools      49.2.1
six             1.15.0
soupsieve       2.0.1
urllib3         1.25.10
wheel           0.34.2
zope.interface  5.1.0

Transférer sur Doekerhub

$ docker push shunsukenashiki/{nom du compte dockerhub/Nom de l'image}:latest

Recommended Posts

[Note] Créez un environnement Python3 avec Docker dans EC2
Créer un environnement Node.js avec Docker
Créer un environnement de développement Wordpress avec Docker
Créez rapidement un environnement de développement WordPress avec Docker
Créer un environnement Docker avec WSL
[Note] Créez un environnement Java à partir de zéro avec docker
Créez un environnement Vue3 avec Docker!
Créer un environnement local Couchbase avec Docker
Créer un environnement Tomcat 8.5 avec Pleiades 4.8
Créez un environnement Docker + Laravel avec Laradock
Modifier Mysql avec des commandes dans l'environnement Docker
Créer un environnement d'exécution WAS à partir de Docker
Créer un environnement de test de navigateur à l'aide de Capybara dans l'environnement de développement Docker
Créer un environnement de développement pour Django + MySQL + nginx avec Docker Compose
[Docker] Construisez l'environnement d'exécution de Jupyter Lab avec Docker
Créer un environnement avec Docker sur AWS
Créer un environnement de vérification des opérations TensorFlow avec Docker
Comment créer un environnement Rails 6 avec Docker
Construction d'un environnement de développement simple Docker + Django
Commencer par installer Docker sur EC2 et exécuter Yellowfin dans un conteneur
[Copier et coller] Créez un environnement de développement Laravel avec Docker Compose, partie 2
Comment créer un environnement de développement Ruby on Rails avec Docker (Rails 6.x)
Créez un environnement de développement local pour les didacticiels Rails avec Docker (Rails 6 + PostgreSQL + Webpack)
Créez un environnement de développement sur AWS EC2 avec CentOS7 + Nginx + pm2 + Nuxt.js
Comment créer un environnement de développement Ruby on Rails avec Docker (Rails 5.x)
Modèle: créer un environnement de développement Ruby / Rails avec un conteneur Docker (version Ubuntu)
Modèle: créer un environnement de développement Ruby / Rails avec un conteneur Docker (version Mac)
Créer un environnement de développement pour Docker + Rails6 + Postgresql
[Memo] Créez facilement un environnement CentOS 8 avec Docker
Construction de l'environnement de développement Simple Docker Compose + Django
[Win10] Créer un environnement de développement JSF avec NetBeans
Préparer un environnement de scraping avec Docker et Java
Créer un environnement de développement pour Docker, Java, vs code
Créer un environnement mecab (dictionnaire NEologd) avec Docker (ubuntu)
[Rails] Comment créer un environnement avec Docker
Créer un environnement de développement Spring Boot avec docker
Créer un environnement de développement Java avec VS Code
Créez un environnement de développement pour créer des applications Ruby on Jets + React avec Docker
Mémo pour créer un environnement Servlet sur EC2 d'AWS
Créer un conteneur Docker pour un serveur Web simple Python
Comment créer un environnement Docker avec Gradle pour IntelliJ
Créez un environnement Ruby2.7.x + Rails6.0.x + MySQL8.0.x avec Docker
Créez un environnement de développement Docker + Laravel PHP + Vue.js en 5 minutes
(Pour moi-même) Construisez un laboratoire git avec ubuntu 18.04 + docker pour la maison (Remarque)
Environnement Build Rails (API) x MySQL x Nuxt.js avec Docker