PR

Ubuntuイメージのdockerコンテナを簡単に作成する

Docker
記事内に広告が含まれています。

ローカルの環境を汚さずに、Ubuntu向けの作業をしたい時ってありませんか?

個人的に本番環境のUbuntuを想定して作業したい時、Ubuntuイメージのコンテナが1つあると便利だったのでdocker-composeを使用した構成を共有します。

ディレクトリ構成

前提として、以下のディレクトリ構成で作成します。

- docker_ubuntu ...親ディレクトリ
  - docker-compose.yml
  - front
    - Dockerfile
  - scripts ...コンテナと共有したいファイル等を配置するディレクトリ
    - test.sh

使用するファイル

docker-compose.ymlDockerfileの中身に関して、紹介します。

docker-compose.yml

ubuntu_demoというコンテナ名で作成します。
ホスト側の/{path}/docker_ubuntu/scriptsを、コンテナの/var/scriptsとマウントします。

version: "3"
services:
  release_demo:
    container_name: ubuntu_demo
    build:
      context: ./front/
    volumes:
      - ./scripts:/var/scripts
    tty: true

Dockerfile

ここではubuntu:18.04イメージを使用しましたが、好きなversionを使用してください。
また、ツールは必要に応じてインストールしてください。

FROM ubuntu:18.04

## 必要なツールをインストール
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -my \
  git \
  libgirepository1.0-dev \
  apt-utils \
  libjpeg-dev \
  locales \
  libssl-dev \
  libffi-dev \
  pkg-config \
  libcairo2-dev \
  && rm -rf /var/lib/apt/lists/* \
  && mkdir -p /var/run/pip3 /dist-packages

## 言語設定を行う
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8

## 実行するためのディレクトリを作成
RUN mkdir -p /var/scripts

コンテナ実行の流れ

コンテナの作成・起動

docker-composeファイルが置かれているdocker_ubuntuに移動して、docker-compose up -dを行います。

$ cd /{path}/docker_ubuntu
$ docker-compose up -d

コンテナ内に入る

docker-compose.ymlで定義したcontainer_nameを指定して、実行中のコンテナ内に入ります。

$ docker exec -it ubuntu_demo /bin/bash

ホストとマウントしているファイルを、コンテナ内で確認

コンテナ内に入って/var/scriptsを確認すると、ホスト側の/{path}/docker_ubuntu/scripts配下に置いていたtest.shが共有されていることが分かります。

root@454e99be6a7f:/var/scripts# ll
total 8
drwxr-xr-x 3 root root   96 Mar 30 15:16 ./
drwxr-xr-x 1 root root 4096 Mar 30 14:57 ../
-rw-r--r-- 1 root root   23 Mar 30 15:17 test.sh

まとめ

dockerを使って簡単にubuntu環境を作成する方法を紹介しました。

手順に沿えばすぐに環境を作成できるので、是非使ってみてください。

コメント

タイトルとURLをコピーしました