hkのweblogスマートフォン用の表示で見るhkのweblogひよっこエンジニアがにわとりになるまでの軌跡この広告は、90日以上更新していないブログに表示しています。先日、Docker上にrailsの開発環境を作ったのですが、やたら苦労して丸一日を費やしてしまいました。いうことで簡単に手順をまとめておきます。Dockerfileを作るまでDockerのインストールまず、Dockerをインストールします。今回はWindows10にインストールしました。Windows[stable]」からインストーラーをDLしてそれに沿って進めました。Dockerfileを書く今回ベースとなるDockerイメージはCentOS6.5にしました。rubyのバージョンは2.3.3です。ここに必要なものを入れていくためのDockerfileを書きます。今回はDockerfileが社内に用意されていたのですが、こいつがあちこちひっかかり、丸一日苦しむことになりました。以下にDockerfileの一部を書いておきます。長いのでだいぶ端折ってます。buildする先に書いたDockerfileを任意の場所に配置し、コマンドラインツールでDockerfileのある場所に移動、以下のコマンドを実行します。こんな感じでユーザー名も設定することも可能です。実行すると、今buildしたイメージを確認できます。2.3.3のところでこけました...色々調べたところ、インストールの際にcurlが走るようなのですが、こいつのバージョンが古すぎてダウンロードに失敗するようです。ググってみると同じ問題に直面している方を何人か見つけました。--versionと書いてビルドするとcurlのバージョンが表示されます。自分の場合は7.19.4でした。2017年8月時点で7.55.1が最新版です。2.3.3以下こけてしまう行はコメントアウトしてビルドし、問題を先送りします()。これでとりあえずは新しいイメージができます。実行すると、実行中のコンテナが表示されます。現時点で何も動いていないことが確認できるはず。/bin/bashここでコンテナIDが返されると実行できているはずです。上記のようにマウントしなくても良いのですが、マウントしておくと後々windows上から触れるので便利です。何らかのエラーを返す場合もあるようです。自分の場合はエラーは返さないけど、入力待ちにもならず...みたいな状態になりました。原因究明に半日費やしましたが、ヤケクソでwindowsごと再起動したらうまくいくようになりました。Dockerそのものがうまく動いてなかったのか何なのか。rubyを入れるまでcurlのバージョンをあげる先ほど後回しにした問題を解決すべく、まずは実行中のコンテナに入ります。/bin/bashで入れます。続いてcurlのバージョンを上げていきます。以下を実行していけばOK。install環境変数の設定これでrbenvが入れられそうなものですが、その前にrbenv周りの環境変数を設定してやる必要があります。Dockerfileに書いたやり方ではうまくいきませんでした。.bashrcとかに書いてやってもいいと思います。PATH=$PATH:~/.rbenv/bin:~/.rbenv/shimsでとりあえず設定。rubyのインストールようやくrubyを入れられます。2.3.3以降を実行すれば完了です。やってみての所感いきなりDockerfileを書いてbuildするとあちこち問題が起こるので、ベースのイメージを持ってきて、そこに一つ一つ入れたいものを入れていくほうがいいのかもしれません。うまくできたらDockerfileにまとめておく、と。»プロフィールid:h2r4t都内で働く新米webエンジニアです。このブログは月2更新が目標。読者になる検索リンクはてなブログブログをはじめる週刊はてなブログはてなブログPro最新記事Bingの検索結果をcsvで出力するPythonスクリプトを書いたcanvasで画像ファイルを読み込むVue.jsでsetTimeoutする時の注意点rsyncについてのメモスレッドが競合した時のこと月別アーカイブはてなブログをはじめよう!h2r4tさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。