在 docker中 运行 mono /jexus server 并部署asp.net mvc站点
http://linuxdot.net/bbsfile-3988
1. 安装 docker:
// docker 1.7 新版 安装非常容易,理论上说,在主流的任意linux发行版上都可以直接安装.
wget -qO- https://get.docker.com/ | sh
2. 重启你的宿主机,可选.
reboot
3.拉取已经内建了mono 和jexus 服务器的 docker镜像, 此镜像基于 官方 ubuntu:14.04.2 版本构建,dockerfile 在 hub.docker.io 上可以看到.
docker pull azraelrabbit/monupw
4. 运行容器: 以拉取下来的镜像为基础创建并运行一个容器,镜像内已声明 22/80端口 并已启动对应的服务,22: sshd, 80: jexus
docker run --name monojexus -d -p 32022:22 -p 32080:80 -v /mydata:/data azraelrabbit/monupw
-v 是指将容器里的 Volume[/data] 的/data路径 映射到主机的 /mydata路径.
-p 将容器里的端口映射到主机的指定端口, 这个端口,必须是在dockerfile里,用 EXPOSE 指令声明过的端口.
--name 给这个容器 命名. 方便后续的管理操作,否则用id太猥琐了.[容器的id是随机的128位的字符串,简写的是16位的,不过不方便记忆和管理.]
-d 指让容器以后台服务方式运行,
注: -i Keep STDIN open even if not attached
-t Allocate a pseudo-TTY
-i -t 联合起来用就是指 以前台进程运行容器,并且获得容器的shell,当退出shell时,容器停止运行. 此时可在指令的最后加入要执行的命令行,
貌似这样会覆盖掉 dockerfile里面的CMD[]指令内部的命令行.
5. 用ssh工具连接主机的 32022 端口,即可连接到这个已启动的容器内.
6. 将你的mvc工程或asp.net工程复制到 /mydata路径下. 并在ssh shell 里用sudo 重启一下jws . 即可访问这个容器内的 站点了.
注: 本意是直接发布站点到/mydata下就能直接访问,但是一直报错,而用静态html则可以,所以必须 ssh连接上容器后,必须sudo 重启jws 才能正常访问asp.net/mvc 的站点. 这个问题待解决.
. 容器管理
查看运行中的容器: docker ps
查看所有容器: docker ps -a
停止容器: docker stop 容器名/容器id
删除容器: docker rm 容器名/容器id
. 镜像管理:
获取/更新镜像: docker pull
删除镜像: docker rmi 镜像id
先用admin:monupw用户登陆,在su root:monups可以使用
在 docker中 运行 mono /jexus server 并部署asp.net mvc站点的更多相关文章
- 如何在windows server 2008 部署asp.net mvc
我们做好的asp.net mvc网站,要部署到windows server 2008(IIS7.0)网站,首先要安装好.net framework 4.0,开发工具VS2010,VS2012,VS20 ...
- (转)在Docker中运行Java:为了防止失败,你需要知道这些
转自:https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=2649693848&idx=1&sn=4e9ef7e2a9d ...
- 在Docker中运行纸壳CMS并配置使用MySql
纸壳CMS是基于ASP.Net Core开发的可视化内容管理系统,可以跨平台部署,可以在容器中运行.接下来看看如何在docker中运行纸壳CMS. GitHub:https://github.com/ ...
- 如何让传统ASP.NET网站在Docker中运行
本文主要描述如何让传统ASP.NET网站在Docker中运行,侧重Docker image 搭建. 使用条件: Docker for windows 用户切换到Windows 容器模式 Windows ...
- 在Docker中运行gocd
gocd是一个持续集成的工具,可视化效果非常好 运行gocd-server 12345 docker run -d --name server -p8153:8153 -p8154:8154 -v / ...
- Docker中运行nginx
Docker中运行nginx 1.Docker中运行nginx 2.配置文件 2.1 nginx.conf 2.2 default.conf 3.docker的镜像可以挂什么卷 部分内容原文地址: C ...
- k3d入门指南:在Docker中运行K3s
在本文中,我们将简单了解k3d,这是一款可让您在安装了Docker的任何地方运行一次性Kubernetes集群的工具,此外在本文中我们还将探讨在使用k3d中可能会出现的一切问题. 什么是k3d? k3 ...
- 在docker中运行ASP.NET Core Web API应用程序
本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Cor ...
- .NET Core Web 应用部署到 Docker 中运行
环境介绍 : 虚拟机:VirtualBox 5.1.6 系 统:Ubuntu 16.04.1 LTS 系统准备完成后可以使用 sudo apt-get udpate 和 sudo apt-get up ...
随机推荐
- js类型转换的坑
JS的灵活 说好听是说JS灵活, 说不好听就是JS的坑太多, JS类型转换就是一个大坑, JS的类型包括了原始类型的[null, undefined, String ,Number, Boolean] ...
- bootstrap的基本模板
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- iOS推送处理
iOS收到推送后,跳转到某一页面 字数1348 阅读1001 评论4 喜欢26 以前做过推送, 但只是那种最基本的广播推送(向所有安装appde设备通知), 列播组播这种对指定用户推送消息还没做过, ...
- Day_6作业_模拟人生
as #!/usr/bin/env python # encoding: utf-8 class wisdom(object): def __init__(self,n,g): self.n = n ...
- Python 编程小备忘
1. 获取当前日期,或者间隔当前任意天的日期. >>> import datetime>>> print (datetime.date.today()-dateti ...
- NAT功能的研究
通俗的话:现在大部分的家用路由器都是这个功能,一个公网IP的拨号网络,然后地下全部电脑都可以用这个IP上网,进行数据转发,这就是NAT. 参考:http://baike.baidu.com/link? ...
- Java replace & replaceAll
Java字符串中需要对一些字符进行替换,用到最多的是replace和replaceAll两个方法.这两个方法在使用的时候需要注意: replace: public String replace (Ch ...
- 构建第一个maven工程
一.maven介绍 Maven 是一个强大的项目管理和构建自动化工具,它通过抽象的项目对象模型和构建生命周期模型来对项目及其构建过程进行管理,Maven 最大化的消除了构建的重复,提升了构建的效率与标 ...
- Java线程池的那些事
熟悉java多线程的朋友一定十分了解java的线程池,jdk中的核心实现类为java.util.concurrent.ThreadPoolExecutor.大家可能了解到它的原理,甚至看过它的源码:但 ...
- range和xrange梳理
一.python2.7 range 用户获取指定范围内的数,range([start,] stop[, step]) >>> range(1,5) #代表从1到5(不包含5) [1, ...