部署项目相关命令

npm run build:prod
docker build -t name .

生成后端容器

docker run -d -p 8888:8888 -e SERVICE_JAR_FILE=spring.jar -v /usr/local/software/jar/spring.jar:/usr/local/software/jar/spring.jar -v /usr/local/software/file:/usr/local/software/file --name spring-platform service-common --privileged=true

安装nginx

docker run --name nginx -d --net=host -v /usr/local/software/nginx/log:/var/log/nginx -v /usr/local/software/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/software/nginx/conf.d:/etc/nginx/conf.d -v /usr/local/software/dist:/usr/share/nginx/html -v /usr/local/software/file/:/usr/local/software/file --privileged=true nginx:1.20.2

查看nginx映射目录

docker inspect nginx | grep Mounts -A 20

安装dokcer

安装步骤:
#1.卸载旧版本
$ sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
#2.需要的安装包
$ sudo yum install -y yum-utils
#3.设置镜像的仓库,保存在 /etc/yum.repos.d/docker-ce.repo,repo saved to /etc/yum.repos.d/docker-ce.repo
$ sudo yum-config-manager
–add-repo
https://download.docker.com/linux/centos/docker-ce.repo #默认是国外的,不要用

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)
sudo yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
#4.更新yum软件包索引
yum makecache fast
#5.安装docker(docker-ce社区版 docker-ee企业版,一般都是使用社区版)
sudo yum install docker-ce docker-ce-cli containerd.io
#6.启动docker
$ sudo systemctl start docker
#7.判断是否安装成功
$ sudo docker version
#8.通过hello world进行测试
$ sudo docker run hello-world
#9.查看下载的hello-world镜像
$ sudo docker images
[xqm@centOS7 ~]$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 9 months ago 13.3kB
#10.阿里云镜像加速
#登录自己的阿里云账号,使用镜像加速
sudo mkdir -p /etc/docker
tee读取标准输入的数据,并将其内容输出成文件
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://30ph068u.mirror.aliyuncs.com”]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

docker开机自启动

systemctl enable docker.service
查看是否开机自启动 systemctl list-unit-files | grep docker
设置容器自启动 docker update --restart=always “容器名称”
取消容器自启动 docker update --restart=no “容器名称”

安装docker-compose

curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-uname -s-uname -m > /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose
docker-compose --version

安装MYSQL

#1.查找要安装的镜像
https://hub.docker.com/_/mysql?tab=tags
#2.安装
docker pull mysql:8.0.27
#3.创建一个容器并启动 ( $PWD是当前目录,所以要先选择挂载的目录)

这是3306

docker run -p 3306:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=xqm@123456 --privileged=true -d mysql:8.0.27

这是3307

docker run -p 3307:3307 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=xqm@123456 --privileged=true -d mysql:8.0.27
#4.查看占用的端口号的PID
netstat -tanlp

换端口号

因为这里的端口号改变成了 3307,不是默认的3306,所以在本地目录(不是容器内)$PWD/conf内新建my.cnf文件,加上:
[mysqld]
port=3307

刷新权限

mysql> grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
mysql> flush privileges;

安装redis

#1.拉取镜像
docker pull redis:6.0.16
#2.创建redis.conf文件,将自己的配置文件复制过去
#3.创建容器并进行挂载
docker run -d --privileged=true -p 6379:6379 --restart always -v $PWD/conf/redis.conf:/etc/redis/redis.conf -v $PWD/data:/data --name redis redis:6.0.16 /etc/redis/redis.conf --appendonly yes
#4.使用redis控制台
docker exec -it 62515fd2f366 redis-cli