文章目录
一、docker安装及配置
1.操作文档
2.步骤
2.1 卸载旧版本
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.2 设置仓库
$ sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2.3 安装新docker
sudo yum install docker-ce docker-ce-cli containerd.io
2.3 启动docker
sudo systemctl start docker
注:
- 查看docker版本:sudo docker -v
- docker启动容器命令:sudo docker run hello-world
- 查看镜像:sudo docker images
- 查看所有镜像: sudo docker images -a
2.4 设置docker开机自启动
$ sudo systemctl enable docker
2.5 卸载docker
$ sudo yum remove docker-ce docker-ce-cli containerd.io
#不会自动卸载容器镜像,要手动卸载
$ sudo rm -rf /var/lib/docker
$ sudo rm -rf /var/lib/containerd
2.6 为docker配置镜像加速
dockerhub为国外网站,下载镜像时会遇到速度慢甚至连不上的问题,故配置镜像加速,此加速由阿里云提供。
- 登陆阿里云
- 进入工作台,点击左侧菜单栏,选择产品与服务–容器服务–容器镜像服务
- 镜像工具–镜像加速器,选择CentOS
- 依次执行操作文档的几条命令
二、mysql安装及配置
1.镜像选择
2.下拉安装
#最新版本(:latest可省略)
$ docker pull mysql:latest
#指定版本
$ docker pull mysql:5.7
3.创建实例并启动
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用户密码为root
注:查看mysql位置命令:whereis mysql
4.设置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在linux系统下,表名是默认区分大小写的
#查看是否区分:show variables like '%case_table%';
#lower_case_table_names值为0,区分大小写;值为1,不区分大小写。默认为0。
lower_case_table_names=1
5.重启mysql
$ docker restart mysql
此时配置文件已生效,可查看配置文件内容:
$ cd /etc/mysql
$ cat my.cnf
6.设置服务器重启自启动mysql
docker update mysql --restart=always
三、redis安装及配置
1.镜像选择
2.下拉安装
#最新版本
$ docker pull redis
3.创建实例并启动
首先要在主机上创建配置文件的映射地址
$ mkdir -p /mydata/redis/conf
$ 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
4.使用redis镜像执行redis-cli命令连接
$ docker exec -it redis redis-cli
5.数据持久化
修改配置文件内容:
$ vi /mydata/redis/conf/redis.conf
#添加如下配置,启用AOF持久化方式
appendonly yes
修改完配置之后要重启redis
$ docker restart redis
6.设置服务器重启自启动redis
docker update redis --restart=always
四、nacos安装及配置
1.镜像选择
2.下拉安装
#最新版本
$ docker pull nacos/nacos-server:latest
3.创建实例并启动
docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server
默认的账号和密码是 nacos/nacos
五、java安装及配置
1.镜像选择
2.下拉安装
#最新版本
$ docker pull openjdk:slim-buster
3.查看java版本
$ java -version
4.添加环境变量
$ cd /etc/profile.d
$ touch java.sh
$ ls |grep java
$ vi java.sh
#根据jdk安装位置,添加配置
JAVA_HOME=/home/Serv/jdk/jdk1.8.0_121
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
#使配置生效
$ source /etc/profile.d/java.sh
$ env
#测试
$ java -version
六、nginx安装及配置
1.镜像选择
2.下拉安装
docker pull nginx:latest
docker update nginx --restart=always
3.启动实例
docker run --name nginx -p 8001:80 -d nginx
4.容器映射到本地
4.1 先在本地创建文件夹
mkdir /mydata/nginx/conf
mkdir /mydata/nginx/conf.d
mkdir /mydata/nginx/logs
mkdir /mydata/nginx/html
4.2 将容器内的配置文件拷贝到本机
#2724082f0ccd是nginx容器的id
docker cp 2724082f0ccd:/etc/nginx/nginx.conf /mydata/nginx/conf/
docker cp 2724082f0ccd:/etc/nginx/conf.d/default.conf /mydata/nginx/conf.d/
5.配置文件修改,可根据需要进行修改
6.停止并删除实例
docker stop nginx
docker rm nginx
7.创建并启动实例
docker run --name nginx -p 8001:80 \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/conf.d:/etc/nginx/conf.d \
-d nginx
#配置容器开机自启动
docker update nginx --restart=always