Nous avons publié un conteneur Docker pour le développement de Google AppEngine.
docker-gae-python est le sdk GAE pour la bibliothèque et le compilateur python +, et docker-gae-python-extra contient les outils que vous utilisez.
Les deux commencent comme suit,
sudo docker run -d -p 2022:22 -p 8080:8080 -v (Chemin absolu vers la racine du projet):/home/gae:rw essa/gae-python-extra /usr/sbin/sshd -D
Connectez-vous et utilisez comme suit. Le mot de passe initial est python.
ssh -p 2022 gae@localhost
La commande suivante lancera l'exemple d'application.
python /usr/local/google_appengine/dev_appserver.py /usr/local/google_appengine/demos/python/guestbook --port 8080 --host 0.0.0.0
Depuis l'hôte, vous pouvez y accéder à l'adresse http: // localhost: 8080 /.
Si vous publiez le 8080 sur le pare-feu hôte, vous pouvez y accéder de l'extérieur. Nous avons publié un Dockerfile avec le mot de passe écrit dessus, donc si vous souhaitez publier 2022 du port ssh vers l'extérieur, assurez-vous de changer le mot de passe.
J'ai essayé Docker pour la première fois et je pense que c'est certainement utile.
L'environnement pour GAE SDK pour python est relativement facile à créer, mais étant donné que le projet que je suis en train de faire utilise maintenant closingCompiler, SASS et casper.js (phantom.js), l'environnement d'exécution pour ruby, java et node.js est également disponible. Tu auras besoin de. Il était difficile de créer un environnement où tout cela fonctionne à partir de zéro, et je m'inquiétais de la façon d'écrire l'explication, mais si je la publie comme une image de Docker, elle sera bientôt prête.
Même si vous ne pouvez pas publier l'image, si vous attachez le Dockerfile au projet, cela prendra un certain temps, mais vous pouvez créer le même environnement avec une seule commande de construction de docker.
Pour l'instant, il peut être difficile de créer un environnement d'exécution pour Docker, mais si le cloud qui peut utiliser coreos se généralise, ce sera bientôt possible.
La création d'un Dockerfile est presque identique à l'écriture d'un script shell pour la construction d'un environnement, mais elle valide l'image du système de fichiers du résultat de l'exécution pour chaque ligne de la commande RUN, donc lorsque vous réexécutez, à partir de la ligne qui a été automatiquement corrigée Merci d'avoir recommencé.
Ce à quoi je ne m'attendais pas dans le sens positif lorsque je l'utilisais, c'est que cette fonctionnalité rendait l'écriture d'un Dockerfile plus facile que prévu.
Ce type de script et d'outils pour créer un environnement
Donc, si vous faites tout honnêtement depuis le début, cela prend du temps, donc cela a tendance à être un motif de larmes lorsque vous supprimez par erreur le script que vous écrivez par erreur lors du processus d'initialisation de l'environnement.
Je pense que l'objectif principal de l'utilisation de Docker est de démarrer rapidement une machine pour une opération de production, mais je pense qu'il peut également être utilisé pour préparer un environnement de développement et le partager.
TIPS
Je ne sais pas encore grand-chose, mais je vais noter où j'ai trébuché.
Recommended Posts