一.创建Dockerfile文件
目录
1.第一种:使用Dockerfile自动生成代码(可以不发布)
三、配置拉取服务器镜像源并配置docker(Centos系统)
六、在云服务器或虚拟机中配置项目所需要的Nginx、数据库(SqlServer、MySql)缓存数据库(Redis)等
1.在UI层新建DockerFile文件或在创建新项目时勾选使用Docker
二.配置Dockerfile文件
1.第一种:使用Dockerfile自动生成代码(可以不发布)
2.第二种:重新配置DockerFile(需要发布)
2.1初始配置
#什么都没有配置的
# 使用官方的 .NET 6.0 SDK 镜像作为基础镜像
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
# 暴露端口
EXPOSE 80
# WORKDIR 镜像的工作目录
WORKDIR /app
# 复制文件
COPY . .
# 定义启动命令
ENTRYPOINT ["dotnet", "Farming.HttpApi.Host.dll"]#项目UI层.dll
2.2第二种重新配置
配置新功能后
在复制文件之后,启动命令之前进行配置
验证码需要进行下包SkiaSharp.NativeAssets.Linux.NoDependencies
#配置了后端验证码的
#配置后端验证码使用 如果没有配置后端验证码
# 使用官方的 .NET 6.0 SDK 镜像作为基础镜像
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
# 暴露端口
EXPOSE 80
# WORKDIR 镜像的工作目录
WORKDIR /app
# 复制文件
COPY . .
#修改apt-get的源加速下载
RUN sed -i s@/deb.debian.org/@/mirrors.163.com/@g /etc/apt/sources.list
RUN cat /etc/apt/sources.list
#需要下载的东西
RUN apt-get update && apt-get install -y libgdiplus
# 定义启动命令
ENTRYPOINT ["dotnet", "Farming.HttpApi.Host.dll"]#项目UI层.dll
2.3
发布前在配置文件中更改数据库连接字符串!!!
三、配置拉取服务器镜像源并配置docker(Centos系统)
3.1、镜像源
拉取阿里云镜像源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
生成缓存
#清空
yum clean all
#生成缓存
yum makecache
如果之前有镜像使用
yum-config-manager --disable ltl89o8a.mirror.aliyuncs.com
3.2、Docker
卸载之前的docker(可选)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
联网并安装yum
工具
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken
更新本地镜像源
# 设置docker镜像源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
yum makecache fast
安装docker
yum install -y docker-ce
查看docker版本
docker --version
[关闭防火墙操作] 生产环境不可用
# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
启动docker
systemctl start docker
#设置docker为开机自启
sudo systemctl enable docker
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://rxudtqj1.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
四、设置国内镜像
1.配置国内镜像
#国内镜像
vi /etc/docker/daemon.json
#出现编辑页面后按 i 进入可编辑
#编辑以下代码
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"],
"live-restore": true
}
#成功后Esc退出 并 shift+:输入wq结束编辑
2.重启docker服务
systemctl daemon-reload
service docker restart
3.检查是否成功
docker info
五、docker-compose安装
#基于docker安装docker-compose
#进入bin目录
cd /usr/local/bin
#下载docker-compose
curl -L https://github.com/docker/compose/releases/download/1.28.6/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#赋予权限
chmod +x /usr/local/bin/docker-compose
#查看版本
docker-compose --version
六、在云服务器或虚拟机中配置项目所需要的Nginx、数据库(SqlServer、MySql)缓存数据库(Redis)等
在docker库中查询可拉取版本
docker search 拉取名称
拉取镜像
docker pull 版本名
#删除镜像(当前镜像未被容器使用的前提下)
docker rmi 镜像id/镜像名
查看镜像
#第一种
docker images
#第二种
docker image ls
基于镜像创建容器
docker run --name 容器名称 -p 80:80 -d 镜像名称
容器
#正在运行中的容器
docker ps
#所有容器
docker ps -a
#开启容器
docker start 容器名/id
#停止容器
docker stop 容器名/id
#删除容器
docker rm 容器名/id
#查看容器日志
docker logs 容器名/id
七、.Net Core6(后端项目)
#使用xftp7工具将发布后的文件上传到服务器下的root(最高权限文件夹)可以在当前文件夹中新建文件夹以区分
#文件过大可以使用压缩文件形式传送(压缩格式为.tar)
#传送过后在终端中进入当前文件夹
cd /root/文件夹名
#查看文件夹所有文件
ls
#进行解压
tar -xvf 压缩文件.tar
#构建镜像
#注意:. 不要漏
docker build -t 镜像名 .
#创建容器并使用
docker run -it --rm -p 8088:80 --name 容器名 镜像名
注:Centos7 安装Docker 详细多图版_centos7安装docker-优快云博客
https://blog.youkuaiyun.com/qq_15752347/article/details/132461033
Centos 7配置镜像源_centos7 镜像源配置-优快云博客https://blog.youkuaiyun.com/shiguabg123/article/details/134864082
docker配置MySqlhttps://blog.youkuaiyun.com/tangshiyilang/article/details/130517251
docker部署Redishttps://blog.youkuaiyun.com/wochunyang/article/details/135334283