1.Créer un référentiel avec n'importe quel nom
2.paramètres publics
3.Cliquez sur "créer un référentiel"
4.Paramètre d'utilisateur
-#Faites-le dans le répertoire de l'application
% git config user.nom "nom d'utilisateur"
% git config user.email "email d'enregistrement github"
-#Confirmez que le nom d'utilisateur et l'adresse e-mail définis sont enregistrés.
% git config user.name
% git config user.email
5.Lier des référentiels distants
%URL du référentiel git remote add origin.git
-#Confirmation de la liaison
% git remote -v
% git add .
% git commit -m ‘first commit’
% git push origin master
Vérifiez si l'application peut être poussée vers le référentiel.
1.Cliquez sur Se connecter en haut à droite
2.Cliquez sur "SE CONNECTER AVEC GITHUB"
3.「Authorize travis-Cliquez sur "ci"
4.Entrez les informations sur Github
5.la gauche"+Cliquez sur
6.Cliquez sur n'importe quel référentiel pour synchroniser
7.Cliquez sur "Dashbord" en haut et assurez-vous que vous avez le référentiel sélectionné dans "Dépôts actifs".
-#Créer dans le répertoire personnel de l'application
% vim .travis.yaml
yaml:.travis.yaml
#Exécuter avec les privilèges sudo
sudo: required
#Déclaration d'utilisation de docker
services: docker
#Démarrer le conteneur
before_install:
- docker-compose up --build -d
script:
#Préparation DB
- docker-compose exec —env 'RAILS_ENV=test' web rails db:create
- docker-compose exec —env 'RAILS_ENV=test' web rails db:migrate
#Lancer le test
- docker-compose exec —env 'RAILS_ENV=test' web rails test
Vous devez pousser le code sur github pour que Travi CI fonctionne.
docker-compose.Description de yml
version: '3'
#volume du docker Les données sont enregistrées ici
volumes:
db-data:
services:
web:
build: .
ports:
- '3000:3000'
volumes:
- '.:/product-register'
#Le paramètre de variable d'environnement du conteneur, à l'origine le mot de passe ne doit pas être écrit directement.
environment:
- 'DATABASE_PASSWORD=postgres'
tty: true
stdin_open: true
#Créé une fois le service de base de données créé
depends_on:
- db
#Vous pouvez accéder à db depuis le Web
links:
- db
#conteneur postgres
db:
image: postgres
#Base de données hôte-Stocker les données dans les données
volumes:
- 'db-data:/var/lib/postgresql/data'
environment:
- 'POSTGRES_USER=postgres'
- 'POSTGRES_PASSWORD=postgres'
#Requis lors de l'exécution de postgres autres que localhost
- 'POSTGRES_HOST_AUTH_METHOD=trust'
% git add .
% git commit -m ‘update travis and compose’
% git push origin master
Ici vous pouvez voir la situation d'exécution réelle sur la page travis.
1.s'identifier
2.Cliquez sur "créer une nouvelle application"
3.Entrez n'importe quel nom dans "Nom de l'application".
4.Cliquez sur "Créer une application"
5.Cliquez sur "Ressources" lors de sa création.
6.「Add-Recherche par postgres avec "ons". Sélectionnez "Heroku Postgres"
7.Cliquez sur "Provision".
8.Cliquez sur "Paramètres", puis sur "Reveal Config Vars".
9.config/master.Entrez la valeur de la clé dans VALUE.
10.Entrez "SECRET" pour KEY_KEY_Entrez "BASE".
11.Cliquez sur "Ajouter".
12.Cliquez sur l'onglet "Déployer".
13.Cliquez sur GitHub pour "Méthode de déploiement"
14.Entrez le nom du référentiel dans "Se connecter à Git Hub" et cliquez sur "Rechercher"
15.Cliquez sur "Connet" de n'importe quel référentiel
16.Attendez que CI réussisse avant de déployer dans "Déploiements automatiques"(Déployer après avoir réussi CI)Vérifiez à.
17.Cliquez sur "Activer le déploiement automatique"
config/databese.yml
# You can use this database configuration with:
#
production:
url: <%= ENV['DATABASE_URL'] %>
#
# production:
# <<: *default
# database: product-register_production
# username: product-register
# password: <%= ENV['PRODUCT-REGISTER_DATABASE_PASSWORD'] %>
yml:.travis.yml
#Exécuter avec les privilèges sudo
sudo: required
#Déclaration d'utilisation de docker
services: docker
#Démarrer le conteneur
before_install:
- docker-compose up --build -d
#Connectez-vous au registre Docker d'Heroku
- docker login -u "$HEROKU_USERNAME" -p "$HEROKU_API_KEY" registry.heroku.com
script:
#Préparation DB
- docker-compose exec --env 'RAILS_ENV=test' web rails db:create
- docker-compose exec --env 'RAILS_ENV=test' web rails db:migrate
#Lancer le test
- docker-compose exec --env 'RAILS_ENV=test' web rails test
deploy:
provider: script
script:
docker build -t registry.heroku.com/$HEROKU_API_NAME/web -f Dockerfile.prod .;
docker push registry.heroku.com/$HEROKU_API_NAME/web;
heroku run --app $HEROKU_API_NAME rails db:migrate;
on:
branch: master
Si vous ajoutez un commentaire, vous verrez des problèmes, il est donc préférable de ne pas l'ajouter autant que possible.
-# Heroku-Installer cli
% brew tap heroku/brew && brew install heroku
-#Obtenir un jeton
% heroku authorizations:create
% vim Dockerfile.prod
Dockerfile.prod
FROM ruby:2.5
RUN apt-get update && apt-get install -y \
build-essential \
libpq-dev \
nodejs \
postgresql-client \
yarn
WORKDIR /product-register
COPY Gemfile Gemfile.lock /product-register/
RUN bundle install
#Déplacer tout le code du répertoire actuel vers le conteneur
COPY . .
#Démarrer le serveur de rails
CMD [ "rails", "s"]
% git add .
% git commit -m ’add deploy code’
% git push origin master
Recommended Posts