【Docker】 使用Docker运行Rails的模板
【Docker】使用Docker运行Rails的模板
他是模板。
-
- mysql
-
- (予定)mysql レプリケーション
-
- rails
-
- docker-compose rails mysql
- (予定)docker-compose rails mysql redis
背景
- 2年ほど前からdockerでサービスを動かしてきて、作りたいと思ってた
前提条件 tí
- 任意のgitリポジトリにrailsプロジェクトがある
这个词的用法
- ローカルのお試し開発環境で試すもよし
我要試試看
Dockerfile -> Dockerfile 文件
FROM centos:7
# use utf-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
# install common tools
RUN yum install -y git vim sudo tar wget
RUN yum install -y epel-release
RUN yum install -y gcc-c++ git glibc-headers libffi-devel libxml3 libxml2-devel libxslt libxslt-devel libyaml-devel make nodejs npm openssl-devel readline readline-devel sqlite-devel zlib zlib-devel
## Ruby
RUN cd /usr/local/src && \
wget http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.5.tar.gz && \
tar zxvf ruby-2.2.5.tar.gz && \
cd ruby-2.2.5 && \
./configure --disable-install-doc && \
make && \
make install
RUN yum install -y patch
RUN gem update --system
# crontab
#RUN yum install -y crontabs
#RUN cp -p /usr/share/zoneinfo/Japan /etc/localtime
RUN yum -y install mysql-server mysql-devel
# [edit] rails repository
RUN git clone https://~~~~.git
# [edit] work dir or no such Gemfile error!!!!
WORKDIR /server
RUN gem install bundler
RUN gem install nokogiri -- --use-system-libraries=true --with-xml2-include=/usr/include/libxml2/
RUN bundle config build.nokogiri --use-system-libraries
RUN bundle install --path vendor/bundle
RUN bundle config --global path 'vendor/bundle'
# environment
#ADD env /server/.env
#ADD database.yml config/database.yml
# server start
EXPOSE 3000
CMD ["rails", "server", "-b", "0.0.0.0"]
-
- docker build -t my-rails .
- docker run -d -p 3000:3000 my-rails
其他补充事项
-
- redis compose周りのテンプレートを追加予定
- 追加予定まわりはこちらを参考にhttps://github.com/vvdocker?tab=repositories