IT/DevOps

[Docker] Docker File [6] (feat. ENV, VOLUME)

알 수 없는 사용자 2023. 11. 5. 09:17
반응형

목차

    Dockerfile

    Dockerfile 🙂

    FROM mariadb
    
    #환경변수 세팅
    ENV MYSQL_USER=son
    ENV MYSQL_PASSWORD=1234
    ENV MYSQL_ROOT_PASSWORD=1234
    ENV MYSQL_DATABASE=sondb
    
    #캐릭터셋 세팅
    CMD [ "--character-set-server=utf8mb4", "--collation-server=utf8mb4_unicode_ci" ]

    Docker Command 😎

    #빌드
    docker build -t mysql-image .
    
    #그냥 볼륨 이용해서 컨테이너 실행(mysql에서 자동으로 볼륨 생성)
    #3306 ~ 3308까지 포트 사용중이라 3309로 포트포워딩 함
    docker run -d -p 3309:3306 --name mysql-container mysql-image
    
    #호스트 볼륨 마운트 이용
    docker run -d -p 3309:3306 -v C:/Users/사용자명/DOCKER_LAB/ex05/mysql_vol:/var/lib/mysql --name mysql-container mysql-image
    
    #볼륨이름 사용
    docker run -d -p 3309:3306 -v mysql-vol:/var/lib/mysql --name mysql-container mysql-image

    SQL 🤩

    #캐릭터셋 조회
    show variables like 'character_set%';
    
    #테이블 생성
    CREATE TABLE `emp` (
    	`emp_no` INT(10) NULL DEFAULT NULL,
        `emp_name` VARCHAR(20) NULL 
    )
    ;
    
    #테스트 데이터 저장
    INSERT INTO `sondb`.`emp` (`emp_no`, `emp_name`) VALUES (1, '홍길동');
    INSERT INTO `sondb`.`emp` (`emp_no`, `emp_name`) VALUES (2, '민남기');

    개인 스터디 기록을 메모하는 공간이라 틀린점이 있을 수 있습니다.

    틀린 점 있을 경우 댓글 부탁드립니다.

    reference: https://www.youtube.com/watch?v=wyJA79vQcuY

     

    [Docker] Docker Compose [1] (feat. volumes)

    목차 Docker Compose 이용해서 mysql 컨테이너 실행 후 볼륨 관련 테스트 하는 간단한 예제 docker-compose.yml 😃 yml 형식이라 들여쓰기 주의 services: # db라는 이름은 내맘대로 그 안의 image, restart 등은 수

    yaga.tistory.com

     

    반응형