官方文档
Install Docker Engine on CentOS | Docker Documentation
1、卸载旧版本
- yum remove docker \
- docker-client \
- docker-client-latest \
- docker-common \
- docker-latest \
- docker-latest-logrotate \
- docker-logrotate \
- docker-engine
2、需要的安装包
yum install -y yum-utils
3、设置镜像仓库
- -- 国外的,不推荐
-
- yum-config-manager \
- --add-repo
- https://download.docker.com/linux/centos/docker-ce.repo
-
- -- 阿里云镜像地址
-
- yum-config-manager \
- --add-repo \
- http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4、更新yum索引包
yum makecache
5、安装docker引擎
docker-ce 社区版 docker-ee 企业版
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
6、启动docker
systemctl start docker
7、卸载docker
- yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin
-
- rm -rf /var/lib/docker
-
- rm -rf /var/lib/containerd
Reference documentation | Docker Documentation
- docker version -- docker版本信息
- docker info -- docker信息
- docker images -- 查看镜像
- docker 命令 --help -- 帮助文档
- docker ps -a --
- docker pull xxx -- 下拉镜像
- docker rmi -f 镜像id -- 删除镜像
- docker search xxx -- 搜索镜像
-
- docker attach 镜像id -- 进入镜像,推出,镜像停止
- docker exec -it 镜像id /bin/bash -- 进入镜像,推出,镜像不停止,推荐
-
1、下载镜像
docker pull nginx
2、从nginx容器中映射核心文件
- mkdir -p /opt/docker/nginx/conf.d
- mkdir -p /opt/docker/nginx/html
- mkdir -p /opt/docker/nginx/logs
- touch /opt/docker/nginx/conf/nginx.conf
注:需要先创建个nginx容器,再将本地目录挂载上
docker run --name nginx -p 80:80 -d nginx
- docker cp nginx:/etc/nginx/nginx.conf /opt/docker/nginx/conf/nginx.conf
- docker cp nginx:/etc/nginx/conf.d /opt/docker/nginx/conf.d
- docker cp nginx:/usr/share/nginx/html /opt/docker/nginx
- docker cp nginx:/var/log/nginx /opt/docker/nginx/logs
- docker stop nginx
-
- docker rm nginx
重新启动nginx镜像重新新容器
- docker run -p 80:80 --name nginx \
- -v /opt/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
- -v /opt/docker/nginx/conf.d:/etc/nginx/conf.d \
- -v /opt/docker/nginx/html:/usr/share/nginx/html \
- -v /opt/docker/nginx/logs:/var/log/nginx \
- -d nginx
-
-
-
- docker restart nginx
有个小坑,再启动nginx容器时,/etc/nginx/conf.d/conf.d ,会多出个/conf.d,导致宿主机访问

将这个目录删除就好了
1、拉镜像
docker pull redis
2、创建宿主机挂载目录
- /opt/docker/redis/redis.conf
- /opt/docker/redis/data
3、启动redis容器
- docker run \
- --restart=always \
- -p 6379:6379 \
- --name myredis \
- -v /opt/docker/redis/redis.conf:/etc/redis/redis.conf \
- -v /opt/docker/redis/data:/data \
- -d redis redis-server /etc/redis/redis.conf \
- --appendonly yes
-
-
- --restart=alway -- 总是开机启动
- --appendonly yes -- 开启redis持久化
1、拉去镜像
docker pull mysql:5.7
2、创建挂载目录
- mkdir -p /opt/docker/mysql/logs
- mkdir -p /opt/docker/mysql/data
- mkdir -p /opt/docker/mysql/conf
3、启动容器
- docker run
- --restart=always \
- -p 3306:3306 --name mysql \
- -v /opt/docker/mysql/logs:/var/log/mysql \
- -v /opt/docker/mysql/data:/var/lib/mysql \
- -v /opt/docker/mysql/conf:/etc/mysql \
- -e MYSQL_ROOT_PASSWORD=密码 \
- -d mysql:5.7
4、进入mysql容器
docker exec -it mysql /bin/bash
5、登入mysql
mysql -u root -p
6、检查是否给root用户授权了远程访问
- > use mysql;
- > select User,authentication_string,Host from user;
-
- -- 如果未开启远程访问
- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' ;
-
- -- 刷新权限
- flush privileges;
7、重启mysql容器
docker restart mysql
8、这样安装完mysql会有个坑,查看mysql字符集,都是latin1
show variables like 'character%';
mysql> show variables like '%charac%';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | latin1 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | latin1 |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system |latin1 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)
需要设置成utf8
修改my.cnf
- [client]
- default-character-set=utf8
-
- [mysqld]
- character-set-server = utf8mb4
- collation-server = utf8mb4_general_ci
重启mysql容器,再查看字符集编码,就没问题了
全网最细Docker安装Minio,填满最新版大坑(强烈推荐收藏) - 掘金
1、拉去镜像
docker pull nacos/nacos-server
2、创建本地的映射文件
- mkdir -p /root/nacos/conf /root/nacos/logs
- touch /root/nacos/conf/application.properties
3、创建容器并启动
docker run --name nacos-standalone -e MODE=standalone -v /path/application.properties:/root/nacos/conf/application.properties -p 8848:8848 -d -p 9848:9848 nacos/nacos-server
4、验证
127.0.0.1:8848/nacos
nacos/nacos