Docker利用Jexus独立版部署MVC Demo

在Jexus独立版出来之前都是需要采用Mono + Jexus的方式来部署Asp.NET MVC项目。现在只需用Jexus独立版就可以完成部署工作。

Jexus部署Asp.NET需要的文件

  • Dockerfile

    FROM ubuntu:latest
    MAINTAINER Mongo<mongode@163.com>
    
    RUN apt-get update \
            && apt-get -y upgrade
    
    RUN apt-get -y install wget \
            && cd /usr \
            && wget --no-check-certificate linuxdot.net/down/jexus-5.8.2.tar.gz \
            && tar -zxvf jexus-5.8.2.tar.gz \
            && ./jexus-5.8.2/install \
            && rm -r jexus-5.8.2.tar.gz \
            && apt-get -y autoremove wget
    
    COPY default /usr/jexus/siteconf/default
    EXPOSE 80
    WORKDIR /usr/jexus
    CMD /usr/jexus/jws start && tail -f
    
  • default

    ######################
    # Web Site: Default
    ########################################
    
    port=80
    root=/ /var/www/jexus
    hosts=*    #OR your.com,*.your.com
    
    # addr=0.0.0.0
    # CheckQuery=false
    NoLog=true
    # AppHost.Port=5000
    # NoFile=/index.aspx
    # Keep_Alive=false
    # UseGZIP=false
    # UseHttps=true
    # DenyFrom=192.168.0.233, 192.168.1.*, 192.168.2.0/24
    # AllowFrom=192.168.*.*
    # DenyDirs=~/cgi, ~/upfiles
    # indexes=myindex.aspx
    # rewrite=^/.+?\.(asp|php|cgi|pl|sh)$ /index.aspx
    # reproxy=/bbs/ http://192.168.1.112/bbs/
    # host.Redirect=abc.com www.abc.com  301
    # ResponseHandler.Add=myKey:myValue
    
    # Jexus php fastcgi address is '/var/run/jexus/phpsvr'
    #######################################################
    # fastcgi.add=php|socket:/var/run/jexus/phpsvr
    
    # php-fpm listen address is '127.0.0.1:9000'
    ############################################
    # fastcgi.add=php|tcp:127.0.0.1:9000
    
  • MVC Demo
    MVC Demo下载链接;提取密码:h45o

部署Asp.NET MVC Demo

  • 根据Dockerfile构建镜像

创建脚本;

vim start.sh

编辑脚本,内容如下;

#!/bin/bash
EXPORT="8099"
docker stop jmvc
docker rm jmvc

docker rmi jmvc:latest
docker rmi $(docker images | awk '$1 == "<none>" && $2 == "<none>" {print $3}')

docker build -t jmvc:latest .
docker run -d -p $EXPORT:80 --name jmvc --restart=always -v $(pwd)/mvcdemo:/var/www/jexus jmvc:latest

echo
ip addr show eth1 | awk '$1 == "inet" {split($2,ip,"/");print "Please use the browser to access this address => http://"ip[1]":""'"$EXPORT"'"}'
echo

赋予脚本可执行权限;

chmod +x ./start.sh
  • 创建并启动容器

运行脚本;

 ./start.sh

然后就可以点击页面输出的网址通过浏览器进行访问了。


Better
不积跬步无以至千里,不积小流无以成江海。

Let everything around us become better

588 声望
43 粉丝
0 条评论
推荐阅读
华硕主板Z790P无法识别NVME M.2固态硬盘
电源:长城猎金GX 850W主板:华硕Z790P DDR5CPU:i7 13700K硬盘:三星980PRO和990PRO,均为PCIE 4.0 NVME M.2 固态内存:芝奇(G.SKILL)焰刃(黯夜黑)/C36 16Gx2 DDR5 6000频率水冷:ID-COOLING FROSTFLOW X 240

Ably阅读 1k

张晋涛:我的 2022 总结
大家好,我是张晋涛。2022 年已经结束,我每年都会惯例的做个小回顾,今年因为阳了在恢复身体,一直拖到了今天才写。生活在 2022 年初做回顾的时候,觉得 2021 是魔幻的一年,但现在看来 2022 年其实更加魔幻。一...

张晋涛6阅读 1k评论 2

封面图
利用Docker部署管理LDAP及其初次使用
前言:本周主要写了gitlabWebhook转github的项目,总体上没有遇到什么大问题,这周接触到了LDAP,于是就花时间实际操作了解了一下。

李明5阅读 1.2k

Docker学习:Image的本地存储结构
在使用Docker时候,针对镜像的操作一般就是docker pull,docker build,docker commit(刚开始接触Docker的时候,还不会Dockerfile,经常使用这个命令,但是经历了一次血的教训,已经放弃这个命令很久)这些操作...

backbp4阅读 10k评论 3

使用docker快速搭建xssPlatform测试平台实践
笔者之前给一些开发团队多次做Web安全开发培训,为了让培训的学员能够理解XSS原理和XSS的危害,将xssPlatform进行了更新,之前一直放在GitHub中;发现关注的人越来越多,很多人在安装的过程中遇到问题不知道怎么...

汤青松1阅读 26.2k

将node.js 应用构建成docker镜像
本文内容:将node.js 应用构建成dokcer镜像, 并上传到阿里云创建 Node.js 应用1.首先,创建一个 package.json 文件,描述你应用程序以及需要的依赖: {代码...} 2.运行 npm install这会自动生成一个 package-lock...

weiweiyi3阅读 712

100 行 shell 写个 Docker
在初接触Docker的时候,我们必须要了解的几个概念就是Cgroup、Namespace、RootFs,如果本身对虚拟化的发展没有深入的了解,那么很难对这几个概念有深入的理解,本文的目的就是通过在操作系统中以交互式的方式去理...

vivo互联网技术2阅读 416

Let everything around us become better

588 声望
43 粉丝
宣传栏