Docker는 개발자가 애플리케이션과 종속성을 휴대용 컨테이너로 패키징한 다음 널리 사용되는 Linux 또는 Windows 운영 체제 시스템에 게시할 수 있는 오픈 소스 애플리케이션 컨테이너 엔진입니다.가상화, 컨테이너 샌드박스 메커니즘을 완전히 사용 하고 있으며 그들 사이에 인터페이스가 없습니다.
완전한 Docker는 다음 부분으로 구성됩니다.
-
DockerClient 클라이언트
-
도커 데몬 데몬 프로세스
-
도커 이미지 미러링
-
DockerContainer 컨테이너
시스템 전에 도커 제거
sudo yum 제거 docker\docker-client\docker-client-latest\docker-common\docker-latest\ docker-latest-logrotate\docker-logrotate\docker-engine
Docker-C 설치
필수 종속성 설치
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
docker repo의 yum 위치 설정
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
docker 및 docker-cli 설치
sudo yum install docker-ce docker-ce-cli containerd.io
도커 시작
sudo systemctl start docker
도커 버전 확인
docker -v
부팅 시 docker가 자동으로 시작되도록 설정
sudo systemctl enable docker
도커 이미지 가속 구성
다음 네 가지 명령을 순서대로 실행
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://panyr5rh.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
도커에 mysql 설치
미러 파일 다운로드
docker pull mysql:5.7
인스턴스 생성 및 시작
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
参数说明
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口
-v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机
-v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root:初始化 root
MySQL 配置
vi /mydata/mysql/conf/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci' init_connect='SET NAMES utf8' character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
注意:解决 MySQL 连接慢的问题
在配置文件中加入如下,并重启 mysql
[mysqld]
skip-name-resolve
解释:
skip-name-resolve:跳过域名解析
도커 설치 레디 스
미러 파일 다운로드
docker pull redis
인스턴스 생성 및 시작
mkdir -p /mydata/redis/con
touch /mydata/redis/conf/redis.conf
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
도커 실행 컨테이너 보기
docker ps
레디스 재시작
docker restart redis
redis 연결
docker exec -it redis redis-cli
Redis 지속성 모드 설정
redis 구성 디렉토리를 입력하십시오.
영구 AOF 명령 라인을 추가하도록 파일 수정
appendonly yes
파일을 저장하고 redis를 다시 시작하십시오.
서버가 다시 시작될 때마다 redis 및 mysql도 다시 시작하도록 설정
명령을 입력하십시오:
sudo docker update mysql --restart=always