说在前面
跟着datawhale体验了一把天池竞赛的提交结果的过程,第一次接触到还是挑战挺大的,比如提交结果使用docker提交的,配置阿里云的镜像仓库花费了不少时间,不过也是成功完成了这一个流程。下面记录一下这一个过程
用Docker提交代码
这一次只是单纯的走了一个用docker提交代码的流程,所以代码是使用了这一次datawhale提供的开源内容
安装docker
第一步
因为我的电脑是win10家庭版的,所以安装起来比较麻烦。
首先我电脑上并没有hyper-V,所以我需要将下面的这个内容复制成.cmd模式。
pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
之后以管理员的身份运行后会重启电脑,然后就可以开启hyper-V了。
开启hyper-V
快捷键win+R输入control
后点击程序和功能
然后点击启用或关闭windows功能,最后将框起来打上勾就完成了。
第二步
因为我的电脑是家庭版的,而安装docker需要win系统是企业版或者是专业版的,所以需要伪装成专业版,才能在官网上下载docker
以管理员身份运行 cmd,执行以下命令
REG ADD "HKEY_LOCAL_MACHINE\software\Microsoft\Windows NT\CurrentVersion" /v EditionId /T REG_EXPAND_SZ /d Professional /F
第三步
在官网上下载安装,建议安装时取消勾选window容器(网上以及b站上好多人的建议)
最后验证一下在cmd上输入docker --version 会出现下载的版本号。
在后面需要配置阿里云的环境,所以安装完docker需要注册一个账号
一般上安装完电脑上会出现这个小标,右击即可选择进入并注册一个账号。
开通阿里云容器镜像服务
阿里云容器镜像服务
开通后进入镜像仓库
地址
第一步创建镜像仓库,包括命名,下一步选择在本地仓库后记住公网地址
点击管理就可以看到自己的镜像仓库的公网地址了
创建后就可以开始结合docker上交代码了
上交代码
首先还是需要先改一下docker的镜像,右击刚刚那个小标点击setting然后点击docker Engine 将镜像改为前面我们开通的阿里云容器镜像后每一个人会有一个不同的地址。
将里面的地址复制后加入docker中的docker Engine里面
接下来就是以管理员的身份打开powershell,路径切换到我们需要上交的代码文件夹中,切换命令跟cmd不太一样,是cd"路径地址",注意需要加上双引号。
然后就是执行下面的命令就ok啦。
# 用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。
docker login --username=XXX registry.cn-shanghai.aliyuncs.com# 使用本地Dockefile进行构建,使用创建仓库的【公网地址】
# 如 docker build -t 公网地址:版本号.
# 假设ed0c4b0e545f 为镜像id,上面构建过程最后一行 docker tag ed0c4b0e545f 公网地址:版本号
# 提交镜像到云端 docker push 公网地址:版本号
具体可以参考下面这个入门教程
点它
上传后就可以在比赛页面提交结果啦
因为只是体验一下流程,提交结果的文件里面result是空白的,所以分数就见谅啦。