내 응용 프로그램에 필요한 체계가 이미 포함 된 mysql 이미지 위에 도커 이미지를 만들고 싶습니다.
Dockerfile에 줄을 추가하여 스키마를 SQL 파일로 가져옵니다. 나는 그렇게했다 (Dockerfile) :
FROM mysql
ENV MYSQL_ROOT_PASSWORD="bagabu"
ENV MYSQL_DATABASE="imhere"
ADD imhere.sql /tmp/imhere.sql
RUN "mysql -u root --password="bagabu" imhere < /tmp/imhere.sql"
내 이해에 따르면, mysql docker 이미지에 mysql 클라이언트가 포함되어 있지 않기 때문에 작동하지 않았습니다 (모범 사례는 "좋아하기 때문에 추가하지 마십시오").
이 작업을 수행하는 좋은 방법은 무엇입니까? 나는 몇 가지 사항을 염두에 두었지만 모두 지저분한 해결책처럼 보입니다.
- mysql 클라이언트를 설치하고 관련 작업을 수행 한 다음 제거 / 제거하십시오.
- mysql 클라이언트 바이너리를 이미지에 복사하고 내가해야 할 일을 한 다음 제거하십시오.
- 다른 SQL Server에서 스키마를 만들고 db 파일을 직접 복사하십시오 (이것은 매우 혼란스럽고 오염 된 문제 풀처럼 들립니다)
어떤 제안? 나중에 유지 관리가 용이하고 모범 사례를 준수 할 수있는 방법으로 희망을 갖고 있습니까?