DockerでCentOS7上にC#開発環境を構築
Dockerfile
FROM centos:7
# configure root user
RUN echo 'root:root' | chpasswd
# configure development user
ARG user=me
RUN groupadd ${user} && \
useradd -g ${user} -m ${user} -s /bin/bash && \
echo "${user}:${user}" | chpasswd
# install essentials
RUN yum -y update && \
yum -y install vim less wget zip unzip make git && \
yum clean all
# install C# Development environment
# ERROR : key 1 not an armored public key.
RUN rpm --import "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
RUN su -c 'curl https://download.mono-project.com/repo/centos7-stable.repo | tee /etc/yum.repos.d/mono-centos7-stable.repo'
RUN yum -y install mono-devel
イメージビルド
docker image build -f ./Dockerfile -t centos7:dev_cs .
コンテナ生成&起動
docker container run -i -t --rm centos7:dev_cs su - me
ホストをマウントする場合
docker container run -i -t --rm \
--mount type=bind,src=/Users/me/code,dst=/home/me/code \
centos7:dev_cs su - me
DockerでUbuntu18.04上にC#開発環境を構築
Dockerfile
FROM ubuntu:18.04
# configure root user
RUN echo 'root:root' | chpasswd
# configure development user
ARG user=me
RUN groupadd ${user} && \
useradd -g ${user} -m ${user} -s /bin/bash && \
echo "${user}:${user}" | chpasswd
# install essentials
RUN apt update && apt -y upgrade && \
apt -y install vim less wget curl zip make git && \
apt clean
# install C# Development environment
RUN apt install gnupg ca-certificates && \
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF && \
echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | tee /etc/apt/sources.list.d/mono-official-stable.list && \
apt update && apt -y install mono-devel
イメージビルド
docker image build -f ./Dockerfile -t ubuntu18.04:dev_cs .
コンテナ生成&起動
docker container run -i -t --rm ubuntu18.04:dev_cs su - me
ホストをマウントする場合
docker container run -i -t --rm \
--mount type=bind,src=/Users/me/code,dst=/home/me/code \
ubuntu18.04:dev_cs su - me