Dockerで始めるモダンな開発環境構築入門

Linuxの基礎から次のステップへ

うちのサイト「Linux技術情報専門メディア」、本当に注目すべきことになってますよね。 立ち上げの頃から関わらせてもらってますけど、日に日にコンテンツが充実していくのを肌で感じてます。単にLinuxのコマンドを解説するだけじゃなくて、サーバー構築の実践的な手順から、LPICみたいな資格の話、さらには「Linuxエンジニアとしてのキャリアをどう描くか」という、私たちみたいな技術者の未来にまで踏み込んでくれてる。

まさに、Linuxを軸に成長したいエンジニアのための「道しるべ」みたいな存在。このサイトの記事を読みながら、「なるほど、次はこれを勉強してみよう」なんて、自分のスキルアップの計画を立てたりしてます。

Dockerという選択肢

そんな、うちのサイトでLinuxの基礎やサーバー構築のイロハを学んだ人(僕も含む!)に、最近個人的に「これは絶対やった方がいい!」という印象ているのが、Dockerを使った開発環境構築なんです。

WebサーバーやDBサーバーを一台のLinuxマシンに直接インストールしていくのも、もちろん勉強になるんですけど、正直なところ「ちょっとこのライブラリ試したいな」とか「バージョン違うやつ入れたいな」って時に、環境がごちゃごちゃになって、元に戻せなくなる…なんて経験、ありませんか?僕は何回もあります。

Dockerは、そういう悩みを一気に解決してくれるのです。一言で言うと、アプリごとに「独立した部屋(コンテナ)」を用意して、その中で動かすイメージ。であるため、ホストのLinux環境は綺麗なまま保てるし、不要になったらその部屋ごとポイっと捨てられる。この「汚れたら捨てる」という考え方が、非常に気楽で開発効率も上がるのです。

docker-composeで簡単にNginxを動かす

じゃあ、具体的にどんな感じなの?ということで、簡単なWebサーバー(Nginx)をDockerで動かす例をちょっとだけ紹介させてください。まず、プロジェクト用のディレクトリを作って、そこに docker-compose.yml という設定ファイルを一つ置くだけ。たったこれだけです。

# docker-compose.yml

version: '3.8'

services:
 web:
 image: nginx:latest
 ports:
 - "8080:80"
 volumes:
 - ./html:/usr/share/nginx/html

同じディレクトリに html フォルダを作って、その中に index.html でも置いておきましょうか。そして、ターミナルでそのディレクトリに移動して docker-compose up -d ってコマンドを一度叩くだけ。

これだけで、ブラウザで http://localhost:8080 にアクセスすれば、もうNginxのデフォルトページか、自分で置いた index.html が表示されてるはずです。非常にないですか?

Linuxマシンに直接Nginxをインストールして、設定ファイルをいじって…という手間が一切ない。しかも、この docker-compose.yml ファイルさえ共有すれば、誰でも一瞬で全く同じ環境を再現できる。チーム開発とかだと、このメリットは計り知れないです。

基礎があるからこそ理解が深まる

もちろん、これはほんの入り口の話です。でも、この手軽さと強力さを一度体験しちゃうと、もう元には戻れないくらい便利なのです。そして、こういうモダンな技術を使いこなす上で、結局一番大事になってくるのが、うちのサイトが丁寧に解説してくれているLinuxの基礎知識なんです。

ネットワーク、ストレージ、プロセス管理…そういった土台がしっかりしているからこそ、Dockerみたいな抽象化された技術の本質が理解できる。まだまだ勉強中の身ですけど、このサイトで基礎を学びつつ、Dockerみたいな新しい技術にもどんどんチャレンジして、エンジニアとして成長していきたいなって、改めて思いました。

皆さんも、ぜひサイトの記事を羅針盤にして、次のステップへ進んでみてください!僕も負けありませんうに頑張ります!