💨

絶対にローカルを使いたくない男のCDK環境(Docker)

2022/12/12に公開

はじめに

CDKを使おうと思ったのですが、ローカルに何者かをinstallするのが好きでないので、
Dockerで使えるようにしたものです。
あくまでDev用なので細かい設定とかはしてませんのであしからず。

環境

  • OS:CentOS7 (完全に好みです、ここはお好きにどうぞ)
  • Python3.92
  • awscli:2系
  • aws-cdk:2系

構成

  • /
    • Dockerfile
    • Compose.yml
    • aws-cdk-dev.env
    • work_dir/ :CDKプロジェクト永続化用

ソース

Dockerfile

FROM centos:centos7

RUN yum update -y && yum -y groupinstall "Development tools" 

RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \
    unzip awscliv2.zip && \
    ./aws/install

# node install
RUN yum install -y epel-release
RUN yum install -y nodejs npm

# cdk install
RUN npm install -g aws-cdk

# Python install
RUN yum install -y wget openssl-devel libffi-devel bzip2-devel

RUN cd /tmp && \ 
wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz && \ 
tar xvf Python-3.9.2.tgz  

RUN cd /tmp/Python-3.9.2 && ./configure --enable-optimizations && make install

起動用Compose(dockerコマンドでもいけるのでなくてもいいです)

services:
  aws-cdk:
    build:
      context: ./
    container_name: aws-cdk
    tty: true
    env_file:
    - aws-cdk-dev.env
    volumes: #プロジェクトディレクトリの永続化は絶対
      - ./work_dir:/work_dir

AWSアクセスキー用ファイル

AWS_ACCESS_KEY_ID=hoge
AWS_SECRET_ACCESS_KEY=hogeeeeee
AWS_DEFAULT_REGION=ap-northeast-1

Discussion