首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【腾讯云的1001种玩法】Docker 部署dotnetcore

【腾讯云的1001种玩法】Docker 部署dotnetcore

原创
作者头像
屈政斌
修改2017-06-19 19:27:05
修改2017-06-19 19:27:05
2.5K0
举报
文章被收录于专栏:屈政斌的专栏屈政斌的专栏

导语 大家一起来学习docker, dotnetcore

安装docker

系统还是之前centos 7.1

代码语言:txt
复制
 yum update

创建源:

/etc/yum.repos.d/docker.repo

代码语言:txt
复制
tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF

yum安装

代码语言:txt
复制
yum install docker-engine
systemctl enable docker.service
systemctl start docker

测试

代码语言:txt
复制
docker run --rm hello-world

会显示Hello from Docker!

部署程序

案例还是用 之前的 dotnetcore+angular2 的示例项目 ,详情参考:《centos 7部署 dotnetcore+Angular2 实践》

拷贝到另一个文件夹

代码语言:txt
复制
cp acore/*  dockerapp
创建Dockerfile

备注: 这里有两个坑

1.因为程序是基于dotnet1.0.1 所以必须用 microsoft/dotnet:1.0.1-core;我开始创建的时候 用的1.0.0,当容器运行的时候 就变成Exit(131), 这时候用 docker logs container 可以显示容器运行的时候输出的日志. 然后修正dockerfile 基于image就ok了;

2.镜像里面监听0.0.0.0 , 不然在curl 外部访问出现错误:Connection reset by peer

DockerFile 如下:

代码语言:txt
复制
FROM microsoft/dotnet:1.0.1-core
RUN mkdir /app/
COPY . /app/
WORKDIR ./app
EXPOSE 4000
#CMD "/bin/bash"
CMD ["dotnet", "acore.dll", "--server.urls", "http://0.0.0.0:4000"]
构建Image
代码语言:txt
复制
docker build -t dockerapp:1.0 .

(不要漏了后面一个点)

构建完成后就可以用 docker image 查看了

运行容器
代码语言:txt
复制
docker run --name dockerapp -d -p 8000:4000 dockerapp:1.0

指定容器名称,指定端口资源映射, 还可以指定磁盘映射

使用 docker ps -a 查看运行的容器

显示在运行中

访问一下 我们部署的dotnetcore 程序

配置Nginx

这次映射的docker端口

重启nginx

service nginx restart

成果

外部浏览器访问结果: (该页面我特别在上面加一个div区分旧项目)

相关推荐

Docker 使用指南 (一)—— 基本操作

【腾讯云的1001种玩法】centos 7部署 dotnetcore+Angular2 实践

如何构建docker镜像

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装docker
  • 部署程序
    • 创建Dockerfile
    • 构建Image
    • 运行容器
    • 配置Nginx
    • 成果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档