Docker は、開発者がアプリケーションと依存関係をポータブル コンテナーにパッケージ化し、一般的な Linux または Windows オペレーティング システム マシンに公開できるオープン ソース アプリケーション コンテナー エンジンです. 仮想化 , コンテナー サンドボックス メカニズムを完全に使用しており、それらの間のインターフェースではありません。
完全な Docker は、次の部分で構成されています。
-
DockerClient クライアント
-
Docker デーモン デーモン プロセス
-
Docker イメージのミラーリング
-
DockerContainer コンテナ
システムの前にドッカーをアンインストールします
sudo yum remove 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 リポジトリの 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
Docker イメージ アクセラレーションの構成
次の 4 つのコマンドを順番に実行します。
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
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 install redis
ミラーファイルをダウンロード
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 実行中のコンテナーを表示する
docker ps
redisを再起動します
docker restart redis
Redis を接続する
docker exec -it redis redis-cli
Redis 永続化モードを設定する
redis 構成ディレクトリに入る
ファイルを変更して、永続的な AOF コマンドの行を追加します
appendonly yes
ファイルを保存して redis を再起動します
サーバーが再起動するたびにredisとmysqlも再起動するように設定します
次のコマンドを入力します。
sudo docker update mysql --restart=always