安装Docker,Asp.net core
2017-09-01 15:59
453 查看
升级项目到.NET Core 2.0,在Linux上安装Docker,并成功部署
Docker从入门到实践
一、安装Docker
a)、设置Docker仓库1、按惯例,首先更新Ubuntu的包索引
$ sudo apt-get update
2、让服务器可以使用Https更新仓库
$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
3、添加Docker官方的密钥对,如果没问题,会返回“OK”
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4、校验密钥(9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88)是否和官方一致
$ sudo apt-key fingerprint 0EBFCD88
![](https://images2017.cnblogs.com/blog/646372/201708/646372-20170802190625787-451832095.png)
5、设置官方稳定版的仓库来源
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
b)、安装Docker
1、再次更新下包索引,因为刚才加了Docker仓库,确保是否命中了Docker源
$ sudo apt-get update
![](https://images2017.cnblogs.com/blog/646372/201708/646372-20170802191345803-945922239.png)
2、安装最新版本的Docker-CE社区版
$ sudo apt-get install docker-ce
3、需要安装其他版本的请使用以下命令
$ sudo apt-get install docker-ce=1.13
4、查看是否安装成功
$ docker version
![](https://images2017.cnblogs.com/blog/646372/201708/646372-20170802192752881-1586170204.png)
5、试着运行一个测试镜像(repository),万能的Hello World!
$ sudo docker run hello-world
二、.NetCore的Docker配置
准备工作:首先记录接下来可能会用到的几个常用命令sudo docker pull microsoft/dotnet //从docker仓库拉取一个名称为“microsoft/dotnet”的镜像 sudo docker build light //构建一个名称为light的容器 sudo docker run hello-world //运行hello-world容器 sudo docker images //查看所有镜像 sudo docker rm containerid 容器id //删除containerid容器id sudo docker rmi 63sf86332e //删除一个imageid的镜像 sudo docker rmi $(docker images -q) //删除所有镜像 sudo docker ps -a //查看所有容器 sudo docker rm 6f0c67de4b72 //删除一个containerid的容器 sudo docker rm $(sudo docker ps -a -q) //删除所有容器
说明:使用Ctrl+D快捷键或者键入exit命令来退出容器命令。 需要注意的是,使用rmi命令删除镜像时,如果已有基于该镜像启动的容器存在,则无法直接删除,需要首先删除容器。 当然,rmi和rm这两个子命令都提供-f选项,可强制删除存在容器的镜像或启动中的容器。
1、从docker仓库拉取一个名称为“microsoft/dotnet”的镜像
sudo docker pull microsoft/dotnet:latest
完成之后查看一下所有镜像
(镜像:从仓库中拉取到本地的内容称作镜像;一个镜像里面包含:仓库名称,TAG,镜像ID,创建时间,大小等)
sudo docker images //查看所有镜像
![](https://images2017.cnblogs.com/blog/646372/201708/646372-20170816235839396-1513901366.png)
没有运行过得镜像是没有它对应的容器,查看容器的命令
sudo docker ps -a //查看所有容器
![](https://images2017.cnblogs.com/blog/105584/201709/105584-20170901155742140-624285103.png)
注意:此时还没有容器。
2、首次进入到容器里面需要使用到镜像的仓库名称“microsoft/dotnet”
sudo docker run -it microsoft/dotnet //每次run,都会重新构造出新的互不影响的容器,请自行查看 dotnet --version //查看dot net版本
![](https://images2017.cnblogs.com/blog/105584/201709/105584-20170901165038530-1274893109.png)
docker run之后,就会自动构建一个容器了,以后可以使用start、stop、restart命令操作一个存在的容器了。
(容器:从镜像里面创建出来的一个副本;一个容器里面包含:容器ID,镜像所在的仓库名称,命令,创建时间等)
容器和镜像的关系好比:object和class的关系。
![](https://images2017.cnblogs.com/blog/105584/201709/105584-20170901165138280-696275492.png)
启动一个存在的容器
sudo docker start -i 4dab7aababa1 --容器ID
![](https://images2017.cnblogs.com/blog/105584/201709/105584-20170901172901624-616390859.png)
相关文章推荐
- 基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台
- 品尝阿里云容器服务:初步尝试ASP.NET Core Web API站点的Docker自动化部署
- Docker容器环境下ASP.NET Core Web API应用程序的调试
- Visual Studio Code和Docker开发asp.net core和mysql应用
- 【.NET Core】Docker Jenkins ASP.NET Core自动化部署
- 在Docker中运行asp.net core 跨平台应用程序
- VS2015 update3 安装 asp.net core 失败
- 在Docker中运行asp.net core 跨平台应用程序
- ASP.NET Core部署前期准备 使用Hyper-V安装Ubuntu Server 16.10
- Docker打包 Asp.Net Core应用,在CentOS上运行
- Asp.Net Core-----简介与安装
- Docker容器环境下ASP.NET Core Web API应用程序的调试
- ASP.NET Core 网站在Docker中运行
- Docker打包 Asp.Net Core应用,在CentOS上运行(转)
- 【ASP.NET Core快速入门】(四)在CentOS上安装.NET Core运行时、部署到CentOS
- AspNetCoreapi 使用 Docker + Centos 7部署
- ASP.NET Core 1.0 安装并发布到Centos 7.2 使用jexus 5.8.2