部署环境:docker 容器、liunx系统、这里采用VmWare虚拟机、并采用mobaxterm工具实现终端连接linux系统
2、(环境准备)启动虚拟机、并终端连接 192.168.20.128 (后续直接采用此地址直接访问.NET5项目)
![图片[1]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/ebd70049d32a.png)
linux系统通过ifconfig查看IP地址、并在宿主机中使用MobaXterm操作使用(关于MobaXterm使用详见:http://www.jb51.net/article/212323.htm
3、创建.NET5项目、此项目创建asp.net core mvc
![图片[2]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/603593aa127d.png)
另外需要项目右键需要添加 Docker支持(方式一)
![图片[3]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/1a661b5a8e69.png)
也可以在创建项目的时候(方式二)
![图片[4]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/b7e07f04f9fb.png)
添加完docker支持后项目会生成Dockerfile文件如下:(就是一个文件,文件里面包含了镜像所有的依赖 环境)
![图片[5]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/133bc75849bc.png)
项目本地启动如下图:
![图片[6]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/0b5a8c7b7db4.png)
4、关于Docker安装我还是建议大家直接看官网、非常详细
安装地址(linux系统):http://docs.docker.com/engine/install/centos/
5、安装成功后使用docker部署项目
(1)、安装成功后输入docker info命令如下标识安装成功
![图片[7]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/b0fc1f73b9e1.png)
(2)将项目导入在自定义目录下这里我在home目录下新建了.NET5文件夹、并将项目放置在该文件夹
完成后输入:cd /home/NET5/DockerTest/ 如下
![图片[8]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/1b972808ad7c.png)
![图片[9]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/b3c828b01c9b.png)
(3)、生成该项目镜像docker build -t demo .
demo为镜像的名称、demo后面的小数点注意不要漏掉了哦
![图片[10]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/fe680af45d53.png)
镜像生成成功后查看镜像:docker images
![图片[11]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/28f1002082af.png)
(4)、将刚刚指定生成的镜像生成一个容器 并且启动一个进程(也就说启动该项目)
docker run -d –name cdb -p 8089:80 demo–指定端口已经生成容器镜像 cdb 为容器名称 并且启动一个进程
8089位端口号、cdb为容器名称 当然可以根据指定的镜像名称demo生成多个容器名称、来启动多个进程、各个容器是相互隔离
运行结果如下:
![图片[12]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/172d6c80a784.png)
使用宿主机访问此项目:
192.168.20.128:8089(确实是可以正常访问)
![图片[13]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/743949371db8.png)
查看容器信息:docker ps (cdb为刚刚生成的容器和相关的端口信息)
![图片[14]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/aea8cfa22ef9.png)
那要继续生成一个容器呢继续使用刚刚命令(cdb2新的容器名称)
![图片[15]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/121ced669312.png)
继续启动此端口进程192.168.20.128:8090(同样可以正常访问)
![图片[16]-Docker 部署net5程序实现跨平台功能_docker-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2022/06/408151bc9ca5.png)
docker ps –查看容器信息
docker stop 14e79874c983 –停止id=14e79874c983 的容器
docker rm 14e79874c983–删除id=14e79874c983 的容器docker logs cyx2 –查看容器名称为cyx2的打印日志信息
附录相关docker命令操作文档这位老哥的就不错http://www.cnblogs.com/DeepInThought/p/10896790.html、官网也很全的
总结一下吧:也是最近在学docker、本文只是基本展示一下.Net5项目利用docker容器基本部署、当然还有很多不足之处、有什么欢迎评论区交流、指教
晚上有点困、本来还要聊一下、docker的挂载等等相关操作后续有时间在更行。
以上就是Docker 部署net5程序实现跨平台功能的详细内容,更多关于Docker 部署net5程序的资料请关注安全小天地其它相关文章!
















请登录后查看评论内容