Rails5 + MariaDB 10.3 + Nginx をDockerで環境構築

はじめに

まずは、Docker Composeのベースとなるディレクトリ(例として「rails5-docker-compose」)を作成します。このディレクトリに「docker-compose.yml」を置くことになります。

$ mkdir rails5-docker-compose
$ cd rails5-docker-compose

構築する3つのコンテナ、Rails、MariaDB、Nginx、それぞれで管理するためのディレクトリを作成します。

$ mkdir -p mariadb/sql
$ mkdir -p rails/src
$ mkdir nginx

ベースとなるディレクトリのPATHが環境によって異なるので、docker-compose.ymlで参照できる環境設定ファイル「.env」をカレントディレクトリに準備します。

.env

HOSTSRCPATH=c:/Users/foo/devel/rails5-docker-compose

ここでは、ベースとなるディレクトリまでの絶対パスを、「HOSTSRCPATH」という環境変数にセットしておきます。普段私は、Docker Desktop for Windows、つまりWindows上のDockerエンジン(Hyper-V)を利用し、DockerクライアントはWSL上のubuntuのdocker-cliを利用しているので、上のような例になっています。

前は、「c:/Users/foo/」の部分は「~/」でマウント(bind)できていましたが、Docker Desktopをupdateしていつの間にかできなくなりました。

“Rails5 + MariaDB 10.3 + Nginx をDockerで環境構築” 続きを読む

WSLにてDockerを利用する

はじめに

MacからWindowsにメイン環境を10年ぶりに戻したのですが、さてWebアプリ開発とかどうしようかと少し悩みました。VirtualBoxなどを入れて仮想環境で行おうかとも考えましたが、ディスク(SSD)の資源も限られているので、仮想マシンをバンバン立ち上げられないわけで、となるとやっぱりDockerでしょ。ということで、WSL on Window 10の環境下でDockerによるコンテナ処理について色々とやってみたいと思ったわけです。

DockerDesktop

WSL上にてDockerサーバ(エンジン)を動かすことは余りよろしくないみたいなので、というか私もそれは機能的に心配だったので、下記サイトに習って、「Docker for Windows」を入れて、仮想化基盤としてはWindows 10 Proに最初から備わっているHyper-Vを使用します。そう、Dockerサーバは、Docker for Windowsで稼働させて、DockerクライアントをWSLで動かすというやつです。

(参考)「WSL の docker client から、Docker for Windows の docker daemon を使う手順 | ラボラジアン」
 https://laboradian.com/use-docker-on-wsl/#2_Docker_for_Windows

上記サイトはとても丁寧に説明されており、大変参考になりました。ありがとうございました。

“WSLにてDockerを利用する” 続きを読む

Ubuntu 18.04 (Stretch) on WSL

はじめに

過去記事にて、古いシステムを運用するために、古いライブラリ(例えば、OpenSSL 1.0系)が必要で Ubuntu 18.04 ではなく、Ubuntu 16.04 を泣く泣く使用するなどの話を書きました。

やはりapt upgrade でエラーが出るなどして失敗することがありましたので、とりあえず、WSLとしては最新の Ubuntuを入れておいて、古いライブラリが必要なシステム開発環境の構築については、Dockerを使えばいいやということで、今回は Ubuntu 18.04 をセットアップしてみます。

Dockerについては、Hyper-V を有効にして、Docker for Windowsを使い、Dockerクライアントは、WSL上のUbuntuから利用するという手で行きたいと思いますが、これについてはまた後程。。。

今回の流れとしては以下のとおりです。
私の仕事で必要なものを入れていきます。

さて、一つ一つやっていきますよ(・∀・)b

“Ubuntu 18.04 (Stretch) on WSL” 続きを読む

WSL(Ubuntu 16.04)にてapt upgradeで失敗する

はじめに

約10年間くらいメインマシンをMacにしていましたが、今年からWindows 10のPCをメインに使用しています。

これまでUNIXのツールを利用したいがためにMacを使ってきました。しかし互換性の関係からExcel、WordのOfficeソフトMac用ではなく、Parallels上のWindows用のOfficeをわざわざ使用し、Macオンリーな状況ではなかったわけです。最近、WSL(Windows Subsystem for  Linux)がすこぶる快適に使えるようになったので、もうWindowsがメインでも良いかなと思うようになったわけです。

MSstore

WSLもMicrosoft Storeを見ると色々種類がありますが、比較的慣れたUbuntuを指定します。Store上にて「Ubuntu」として出ているのはバージョン18.04です。今入れるのであれば 18.04 にすべきと思いますが、古い某システムの保守上、Rails 3.2 の開発環境やMySQLでのデータベース環境を構築するために、一つ前の 16.04 のバージョンを選びました。18.04 は、MySQLではなくMariaDBで文字エンコーディングが utf8mb4 だったり、OpenSSL が1.1系で、Ruby 2.2系がビルドできなかったりで、色々と面倒だったので。。。

…と前置きはここまでにして。

“WSL(Ubuntu 16.04)にてapt upgradeで失敗する” 続きを読む

Let’s Note (CF-RZ4) Windows 10 クリーンインストール

はじめに

久しぶりの投稿です。

Let’s Note CF-RZ4 は、1kgを切る軽さで、 USB×3ポートもあり、その他、SDカード、HDMI、VGA(D-Sub 15pin)、LAN(RJ-45)など各種ポート用意されており、出張等で大変重宝しています。

ですが、前から調子悪かったのですが、時々タッチパッドが反応しなくなってしまうようにななってしまいまして、ドライバを更新やら再インストールしたら完全に使えなくなってしまいました。これはWindows 10を入れ直す他無いなと思い、クリーンインストールに至ったわけです。

元から、Window 8 → Windows 8.1 → Windows 10とアップグレードしていったので、色々とゴミが溜まって、SSD 256GB の容量を割と食っていたので、いつかはしなきゃと思っていたのです。

“Let’s Note (CF-RZ4) Windows 10 クリーンインストール” 続きを読む