動け!! 動けよ!! 動いてよ!!!!
プログラマーなら、自分のコードが動かないときに大体思うよね。
「今やらなきゃ、みんな死んじゃう(デスマな)んだ!!そんなのもう嫌なんだよ。だから 動いてよ!!」
DockerでMySQLの5.6を動かそうとして↑な状況になった件について
※2024/06/17時点で起こったこと
とりあえず最初に作ったDockerfileを見ておくれ
dockerfile
FROM mysql:5.6.36
RUN apt-get update && \
apt-get install -y locales vim && \
rm -rf /var/lib/apt/lists/* && \
echo "ja_JP.UTF-8 UTF-8" > /etc/locale.gen && \
locale-gen ja_JP.UTF-8
ENV LANG ja_JP.utf8
RUN { \
echo '[mysqld]'; \
echo 'character-set-server=utf8'; \
echo 'collation-server=utf8_general_ci'; \
echo '[client]'; \
echo 'default-character-set=utf8'; \
} > /etc/mysql/conf.d/charset.cnf
これでcompose upすると、apt-getで404エラーが発生しました。
Linuxをイジってる人ならすぐに「あぁdebianのパッケージの場所が変わったんだな」ってお察しでしょうが、
基本的にWindowsしか使ってこなかった勢からすると「404ってサイトが見つからないってことだよね、公式とか他の人のサイト通りに書いてるのに、なんで動かないだよ。。。動いてよ!!」ってアレになるかと思うので備忘録的な意味で、追加設定を入れた版で残しておきますね。
dockerfile
FROM mysql:5.6.36
RUN echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list && \
echo "deb http://archive.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list && \
apt-get update && \
apt-get install -y locales vim && \
rm -rf /var/lib/apt/lists/* && \
echo "ja_JP.UTF-8 UTF-8" > /etc/locale.gen && \
locale-gen ja_JP.UTF-8
ENV LANG ja_JP.utf8
RUN { \
echo '[mysqld]'; \
echo 'character-set-server=utf8'; \
echo 'collation-server=utf8_general_ci'; \
echo '[client]'; \
echo 'default-character-set=utf8'; \
} > /etc/mysql/conf.d/charset.cnf