Docker技术几年前就火了,伴随着今年来devops的流行,这项技术一直被技术社区追捧。提起Docker很容易被默认为是Linux平台下的技术,.NET的技术跟他似乎没有沾边,不过那是对非.NET Core的技术而言,新推的.NET Core技术既然可以支持夸平台,那么当然运行在Docker平台也是没有问题的,.NET Core的安装指南里面就有专门的针对Docker平台的。
Docker技术最酷的功能当然就是运行环境的一致性,遥想没有Docker或者不用Docker,在开发,测试和部署环境维护配置的繁琐,耗费人力,惹毛开发人员。有了Docker把自动化部署推向了新的水平,甚至开发人员在开发机器把程序跑通,然后发布一个Docker镜像,然后用户pull下这个镜像,拿到Docker运行就可以了,是不是很简单呢。看起来简单的,具体技术实现还是要了解,比如如何创建自己的镜像,.NET Core的技术如何跟Docker结合使用等。
那就从最基本的开始,安装Docker平台。
实际上还是比较简单的,官方有详细的说明,有安装指南的好处是不用敲命令行,复制粘贴命令行就够了。
记录下简要的步骤,以后忘了也好重新捡回。
1 安装最小化版CentOS7
至于为什么选用CentOS7,并不是因为Docker平台只能运行在Linux,而是企业一般都用这个作为服务器系统。
(当然Docker也是可以运行在Windows(至少Windows10以上),在Windows上运行需要依赖HyperV,windows上安装Docker比较简单,不详细说。)
CentOS7安装的是最小化功能版本。
vim /etc/sysconfig/network-scripts/ifcfg-ens33
主要设置以下项目的值,IP地址根据具体的值设置
BOOTPROTO="static"
IPADDR="192.168.115.136"
NETMASK="255.255.255.0"
GATEWAY="192.168.115.2"
设置DNS
vim /etc/sysconfig/network
加入一行即可
DNS1=8.8.8.8
当然设置其他IP也可以,能用就行。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum-config-manager --enable docker-ce-edge #可选
sudo yum-config-manager --enable docker-ce-test #可选
sudo yum install docker-ce
4 启动Docker
sudo systemctl start docker #启动Docker
sudo systemctl enable docker.service #设置Docker服务开机启动
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 05a3bd381fc2 2 weeks ago 1.84kB
通过docker ps -a 查看目前在运行的容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c0872b507bdc hello-world "/hello" 10 seconds ago Exited (0) 9 seconds ago adoring_colden
到此Docker的服务器环境就够了,那.NET Core那些呢,不是要运行Asp.NET Core吗?
现在用的Docker,当然这些都要通过Docker镜像的方式解决,后续会详细介绍。