随手记一下工作笔记
文章目录- 一.win10环境安装 docker
- win10打开Hyper-v
- docker安装
- docker引擎配置 (抄作业)
- docker一些命令
- 二.应用打包,这里用net为例
- dockerfile 配置 (net,抄作业)
- 阿里云-容器镜像服务
- 将本地应用推到阿里容器镜像服务(抄作业)
- 三. 在centos服务器上下载docker并部署我们在阿里云上面的镜像
- 还是抄作业(centos自动部署文件)
一.win10环境安装 docker
首先找到docker官网下载win10环境的docker应用程序docker win下载地址
可以看到这里有一个系统要求需要打开Hyper-v
右键单击开始菜单
选择设置
这个时候docker应该已经下载完成了
点击安装包安装
这里我使用网易有道词典翻译了一下大概是安装wsl2环境和创建桌面快捷方式
这里我没选wsl2 基本应用就行
等待安装完成
点击close关闭
双击打开它
协议条款
弹了一个wsl2不完整的框 这里我选择的cancel 取消掉
设置完之后保存重启
重启后有一些推荐提示之类的 关掉就行
这里点击start开始
这里我个人没什么配置的 全部nextstep 然后done 完成
配置完成后大概就这个界面 这个小鲸鱼绿了 就启动成功了
我们经理给我的 看了一下 应该是一些加速配置
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"debug": false,
"experimental": false,
"features": {
"buildkit": true
},
"insecure-registries": [],
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
复制粘贴进去就行 然后保存重启就可以关闭docker窗口了
随后打开cmd
输入可以查看docker版本号
docker -v
到此 win安装部分结束
搜索镜像 (模糊搜索) docker search 镜像名 查看本地镜像 docker images 查看所有容器 docker ps -a 启动一个或多个已经被停止的容器 docker start 容器ID/容器名称 重启容器 docker restart 容器ID/容器名称 停止一个运行中的容器 docker stop 容器ID/容器名称 杀掉一个运行中的容器 docker kill 容器ID/容器名称 删除一个已停止的容器 docker rm 容器ID/容器名称 删除一个运行中的容器 docker rm -f 容器ID/容器名称
查看本地镜像
镜像和容器有区别 镜像是一个文件 容器则是跑起来的东西
ps:经理后台用net写的 没办法 感觉重点在dockerfile文件上
经理备注得很简介明了
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. #Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed. #For more information, please see https://aka.ms/containercompat #表示以microsoft/aspnetcore作为基础镜像进行新镜像的构建 FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base #指定工作目录为/app WORKDIR /app #将Dockerfile所在目录的所有文件拷贝到容器的app目录下,最前面的点代表Dockerfile所在的目录(注意点后面有空格) COPY . /app #端口,多个端口以空格分割 EXPOSE 80 #设置时间为中国上海 ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone #可以看见我们项目叫FormManage ENTRYPOINT ["dotnet", "FormManage.dll"]
然后我们去发布一下
来到发布文件夹可以看到dockerfile 文件
到这之后我们就可以登录阿里云了
找不到容器镜像服务 直接搜索
这里我选了一个个人版的 ,由于已经建了 创建流程就没法一步一步贴出来了,大概要记住你阿里云镜像仓库密码 之后要用
创建完之后进入个人实例可以看见一些配置
创建一个命名空间 个人版只能创建三个 记住命名空间的名字 后面有用
填信息
选本地仓库,创建
创建完之后会看到这个
记一下这个用户名 有用
这个时候阿里的容器镜像也就配置完了 不要关页面 后面有些东西要用
这里经理丢了我三个文件 ,甩脸上的 不用有点说不过去
我是用的win系统 所以来看看 build-push-windows.bat 文件
大致内容如下 originArea 可以看一下 我用的 深圳的 所有 这里 originArea=registry.cn-shenzhen.aliyuncs.com 换其他的也行
然后下面的配置 去掉中括号 改成对应的内容就行
这里登陆名是刚刚上面讲到的 用户名 不是 登陆账号
@echo off :: 自动构建本地镜像并推送到镜像仓库,适用windows系统 :: 采用阿里云镜像仓库 set originArea=registry.cn-shenzhen.aliyuncs.com set originNameSpan=[命名空间] set originName=[仓库名] set originUser=[仓库登录名] set imageName=[镜像名] set dockerPwd=[阿里云镜像仓库密码] set buildPath=[发布文件根目录] echo 'FormManage-镜像自动推送' set/p oldVersion=请输入旧版本号: set/p newVersion=请输入新版本号: echo '删除原始镜像...' docker image rm -f %imageName% docker image rm -f %originArea%/%originNameSpan%/%originName%:%oldVersion% echo '切换发布路径...' cd %buildPath% echo '构建新镜像...' docker build -t %imageName% . echo '登录阿里云仓库' docker login --username=%originUser% %originArea% echo '构建阿里云镜像' docker tag %imageName% %originArea%/%originNameSpan%/%originName%:%newVersion% echo '推送至阿里云镜像仓库' docker push %originArea%/%originNameSpan%/%originName%:%newVersion% echo '推送完成' pause
复制粘贴 然后我们保存为bet文件 运行它
输入一下对应的东西 然后等他运行完 然后我们就可以看见阿里云镜像服务里面对应的仓库下面的镜像了
到此 该段结束
因为centos有集成docker 所以
yum install docker
这个命令会直接安装
输入y安装
安装完成查看一下版本
然后我们找一个文件夹 创建一个sh文件
用工具打开这个文件并编辑它
修改一下对应内容
#!/bin/bash
# 服务器部署用
# 自动拉取镜像到本地并运行,适用linux内核系统
# 采用阿里云镜像仓库
# 如果权限不足,请在所有命令前追加 sudo
originArea='registry.cn-shenzhen.aliyuncs.com'
originNameSpan='[命名空间]'
originName='[仓库名]'
originUser='[仓库登录名]'
imageName='[镜像名]'
dockerPwd='[阿里云镜像仓库密码]'
port='[程序端口]'
echo '登录镜像仓库(已登录请直接回车)'
docker login --username=${originUser} ${originArea}
read -p '请输入旧版本号:' oldVersion
read -p '请输入新版本号:' newVersion
echo '停止进程'
docker kill -s KILL ${imageName}
echo '删除旧版本容器'
docker rm ${imageName}
echo '删除旧版本镜像'
docker rmi -f ${originArea}/${originNameSpan}/${originName}:${oldVersion}
echo '拉取新版本镜像'
docker pull ${originArea}/${originNameSpan}/${originName}:${newVersion}
echo '运行新版本容器'
docker run -itd -p ${port}:80 --restart always --name=${imageName} ${originArea}/${originNameSpan}/${originName}:${newVersion}
docker ps
echo '部署完成'
编辑完保存 并运行它 (记得进入目录再运行它)
输入一下配置之后就完成了 可以看到已经运行了 这里端口去阿里云开一下 就可以正常连接了



