[Docker] Wird immer mit Docker + Rails verwendet

Einführung

Wenn Sie Rails verwenden und eine regelmäßige Verarbeitung implementieren, werden Sie wahrscheinlich "wann immer" erwähnen. Außerdem ist die Verwendung von Docker in einer Entwicklungsumgebung heutzutage alltäglich geworden. Dieses Mal werde ich zusammenfassen, worauf Sie bei der Verwendung in einer solchen Umgebung achten sollten. Es gibt keinen Rails-Code. Es geht um Docker-Einstellungen.

Umgebung

Docker Ruby 2.6.3 Rails 5.2.3

Was du machen willst

Erzielen Sie eine regelmäßige Verarbeitung, wenn Sie sich in der Docker-Umgebung befinden

Fazit

Es scheint, dass cron nicht standardmäßig in Docker installiert ist. Installieren Sie also cron und starten Sie es. In einem anderen Artikel erfahren Sie, wie Sie jederzeit beginnen können.

Unten sind die Einstellungen.

Dockerfile

Dockerfile


FROM ruby:2.6.3 #Version passt zur Umgebung

ENV LANG C.UTF-8
ENV TZ Asia/Tokyo

RUN apt-get update -qq && \
    apt-get install -y build-essential \
                       libpq-dev \
                       nodejs \
                       npm \
                       vim \
                       default-mysql-client \
                       cron \ #← Installation
    && rm -rf /var/lib/apt/lists/*

RUN npm install n -g
RUN n 10.15.3
RUN service cron start #← Starten Sie cron

RUN gem install bundler -v 2.0.1
RUN gem install mysql2  -- --with-cppflags=-I/usr/local/opt/openssl/include --with-ldflags=-L/usr/local/opt/openssl/lib

RUN mkdir /app
ENV APP_ROOT /app
ENV RAILS_ENV development
WORKDIR $APP_ROOT

ADD ./.git-credentials /root/.git-credentials
RUN git config --global credential.helper store

ADD ./app/Gemfile $APP_ROOT/
ADD ./app/Gemfile.lock $APP_ROOT/

RUN bundle install

ADD ./app/ $APP_ROOT/

Bauen Sie dann den Behälter wie gewohnt auf.

Vergessen Sie auch nicht, den Start mit dem folgenden Befehl zu überprüfen.

$ service cron status

Wenn es läuft, sehen Sie "[ok] cron läuft".

Jetzt können Sie jederzeit in der Docker-Umgebung verwenden. In Bezug auf wann immer ich denke, dass die Artikel anderer Leute gut sind, beziehen Sie sich bitte darauf.

Der folgende Artikel dieser Person @ Esfahan war sehr hilfreich. Cron mit Rails konfigurieren, wann immer

Recommended Posts

[Docker] Wird immer mit Docker + Rails verwendet
Führen Sie Rails immer im Docker aus
Verwenden Sie Puphpeteer mit Docker
Verwenden Sie GDAL mit Python mit Docker
[Docker] Rails 5.2-Umgebungskonstruktion mit Docker
Verwenden Sie mit Rails 6.0 mehrere Datenbanken
[Umgebungskonstruktion mit Docker] Rails 6 & MySQL 8
Verwenden von cuda11.0 mit pytorch mit Docker
Schienenumgebungskonstruktion mit Docker (persönliche Apokalypse)
Erstellen einer Rails 6- und PostgreSQL-Umgebung mit Docker
Mit Docker auf Heroku bereitstellen (Rails 6, MySQL)
Verwenden Sie Symbolic Link für den mehrstufigen Build von Docker
Rails Docker-Teil 1-
Rails Docker ~ Teil 2 ~
[Rails] Verwenden Sie jQuery
So erstellen Sie eine Rails 6-Umgebung mit Docker
Einführung in Rspec mit Ruby on Rails x Docker
Einfaches Diagramm mit Rails ausgeben Verwenden Sie gem-chartkick / groupdate
[Rails] So erstellen Sie eine Umgebung mit Docker
Mit Rails + Docker einfach Hallo Welt anzuzeigen
Verwenden Sie ProGuard mit Gradle
Aufbau der Rails Docker-Umgebung
Docker x Rails 6 (Memo)
Starten Sie MariaDB mit Docker
[Rails 6] Laufzeitfehler mit $ Rails s
Explodiere Docker mit WSL2
Verwenden Sie XVim2 mit Xcode 12.0.1
Verwenden von CentOS mit LXD
Gerät mit Schienen handhaben
[Rails] Lernen mit Rails Tutorial
Bedienen Sie Emby mit Docker
[Schienen] Test mit RSpec
Führen Sie Payara mit Docker aus
Verwenden Sie Webmock mit Rspec
Verwenden Sie Bilder mit Schienen
[Rails] Entwicklung mit MySQL
Unterstützt Mehrsprachigkeit mit Rails!
Verwenden Sie jlink mit gradle
Fehler beim Bereitstellen von Docker auf Schienen mit Notizen
Build Rails (API) x MySQL x Nuxt.js Umgebung mit Docker