De la traction des rails image-docker au lancement

Réutilisons l'environnement des rails une fois créé avec docker

Il est difficile de créer un docker et un docker-composer une fois tout en faisant référence à ceux d'autres personnes, puis de recommencer lorsque vous souhaitez créer une application avec les mêmes paramètres. Donc, je vais télécharger l'image que j'ai faite sur docker-hub afin que je puisse facilement la dupliquer. Cette fois, j'utiliserai l'image créée par les rails 6.0.3 et mysql8.0.2. (Référence: https://qiita.com/shima-zu/items/b825c5a47b3582ef99cc)

Tout d'abord, vérifiez l'ID de conteneur utilisé sur docker-compose et créez une image à transférer de cet ID de conteneur vers docker-hub. Entrez cette commande dans le terminal pour récupérer l'état du conteneur. macbook-pro rails_app % docker ps -a
Résultat de sortie

51334eee76eb        rails_app_web       "entrypoint.sh bash …"   2 days ago          Up 31 minutes       0.0.0.0:3000->3000/tcp              rails_app_web_1
40f92b2d8ed5        mysql:8.0.20        "docker-entrypoint.s…"   2 days ago          Up 31 minutes       33060/tcp, 0.0.0.0:3307->3306/tcp   rails_app_db_1 

Deux conteneurs sont utilisés, ID = 51334eee76eb Name = rails_app_web, ID = 40f92b2d8ed5, Name = mysql: 8.0.20. Au fait, mysql: 8.0.20 équivaut à tag. Pour pousser vers le docker hub, le nom de l'image doit inclure le nom d'utilisateur, donc créez une nouvelle image.

tag


 Pour mysql, entrez tag = `8.0.20`.
 Si le tag n'est pas spécifié, le dernier sera défini automatiquement.
 Et enfin, poussez l'image vers le hub docker.
`docker push Username/ImageName:tag`
 Vous pouvez pousser avec.
 Maintenant, tirez l'image d'ici, créez un conteneur et allez au point où vous émettez Yay! You are on Rails!.
 Tout d'abord, définissez le répertoire de travail et déplacez-le.
`mkdir /docker-rails
 cd docker-rails`
 Tirez l'image.
`docker pull Username/rails_app_web`
`docker pull Username/mysql`
 Créez les fichiers requis.
` touch { docker-compose.yml, Gemfile, Gemfile.lock, entrypoint.sh, .env }`
 Si vous ne supprimez pas la construction de docker-compose.yml et changez le numéro de port, vous obtiendrez une erreur indiquant que le port est déjà pris, alors soyez prudent.
`docker-compose run --rm web rails new . --force --no-deps --database=mysql --skip-turbolinks`
 Créez rails-app dans le dossier et réinstallez webpacker.
`docker-compose run --rm web bin/rails webpacker:install`
 Collez database.yml de la même manière pour créer la base de données.
`docker-compose run --rm web bin/rails db:create`
 Enfin, lancez le conteneur en arrière-plan et vous avez terminé.
`docker-compose up -d`


Recommended Posts

De la traction des rails image-docker au lancement
De l'introduction à l'utilisation de byebug
[Rails] Comment convertir ERB en Haml
[Rails] Assignation de variables du contrôleur à JavaScript
Fonction Strict_loading pour supprimer l'occurrence de problème N + 1 ajoutée à partir des rails 6.1
Bouton [Rails] pour revenir en haut de la page
[Rails] J'ai essayé de faire passer la version de Rails de 5.0 à 5.2
Comment lier Rails6 Vue (à partir de la construction de l'environnement)
Tutoriel Rails Chapitre 1 De zéro au déploiement [Essayer]
Résumé de la mousse lors de la mise à jour de JMockit 1.4 vers 1.30
De la configuration à l'utilisation de l'enrobeuse Selenium Selenide
Je veux jouer avec Firestore de Rails
Comment utiliser JQuery dans Rails 6 js.erb
[Rails] Introduction de pay.jp (de la personnalisation de la vue à l'enregistrement)
[Rails] De la préparation du test au test unitaire du modèle [RSpec]
De l'introduction de la conception à la création de la table des utilisateurs
Comment écrire Scala du point de vue de Java
[Rails, JS] Comment implémenter l'affichage asynchrone des commentaires
[Mis à jour de temps en temps] Ruby on Rails Méthode pratique
[Rails] Comment changer le nom de colonne de la table
[Eclipse] Résumé des paramètres d'environnement * Mis à jour de temps en temps
Comment télécharger des images depuis AWS S3 (rails, carrierwave)
Tutoriel Rails 4e édition: Chapitre 1 De zéro au déploiement
Comment empêcher editTextPreference de Android PreferenceFragmentCompat de se rompre
[Rails] Comment obtenir le contenu des paramètres forts
[Ruby on Rails] De la construction de MySQL au changement de base de données
[Ubuntu20.04] De l'installation ROS-noetic à la simulation SLAM de turtlebot3
Changements de Java 8 à Java 11
Somme de Java_1 à 100
Comment écrire des rails
Migrer de JUnit 4 vers JUnit 5
Présentation de Bootstrap à Rails 5
[Rails] Présentation de PAY.JP
Présentation de Bootstrap aux rails !!
Présentation de Vue.js à Rails
Comment désinstaller Rails
De Java à Ruby !!
Cloud9 (Rails) de Github
L'histoire de la montée de Spring Boot de la série 1.5 à la série 2.1 part2
Java qui ignore les données d'Android vers le ROS de Jetson Nano
Tutoriel Chewing the Rails [Chapitre 1 De zéro au déploiement] Deuxième moitié
Tutoriel Chewing the Rails [Chapitre 1 De zéro au déploiement] Première moitié
Comment écrire une migration du type Rails datetime au type date
Accédez à l'abréviation à partir de 5 exemples de listes Java en italique
[Ruby on Rails] Élimination de Fat Controller-First, logic to model-
Comment obtenir les informations les plus longues de Twitter à partir du 12/12/2016
Comment graver un disque d'installation de Windows à partir d'Ubuntu
[Rails] Fonction de recherche et de liste de produits à partir de catégories à plusieurs niveaux
Une série d'étapes pour créer des livrables pour les portefeuilles avec Rails