jexus docker

一、准备工作

1.init.sh 文件

#!/bin/bash

# Stop your services
function stop_svc {
  /usr/jexus/jws stop >/dev/null 2>&1
  service ssh stop >dev/null 2>&1

  exit
}

# Set the SIGTREM signal response function
trap 'stop_svc' SIGTERM

# Start Your Services
#####################
/usr/jexus/jws start
service ssh start

# Waiting signal
####################
while true
do
  sleep 2
done

2.Dockerfile

FROM ubuntu:latest
MAINTAINER Yunei.Liuyun <j66x@163.com>

RUN apt-get update; apt-get -y upgrade; apt-get -y install wget curl ssh vim php-cgi libx11-dev libfreetype6-dev libexpat-dev libglib2.0-bin
RUN curl https://jexus.org/release/x64/install.sh|sh

# RUN sed -i -e 's/^PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config

ADD init.sh /bin
RUN chmod +x /bin/init.sh; apt-get -y autoremove; apt-get -y autoclean; apt-get -y clean

EXPOSE  22 80 443 42424

ENV TERM="xterm"
WORKDIR /usr/jexus

ENTRYPOINT ["/bin/init.sh"]

二、使用说明

 这是一个构建以Jexus服务器为主体的功能完整的Docker镜像脚本
=============================================================

镜像创建完成后,将包括如下功能或组件:
1,最新发布的Jexus独立版
2,支持ssh登录和管理(需要先进入容器为root设置密码)
3,包含 vim、wget、curl 等必要工具
4,包含 System.Drawing 所需要的图形库
5,支持PHP
6,公开42424端口,可以向外提供 Asp.Net Stat服务


使用方法:

一,把Dockerfile文件和init.sh文件放到linux主机的某个文件夹中,然后进入这个文件夹。

二,构建镜像:
    sudo docker build -t jexus:v1 .
    (注意,这行命令最后有一个空格+英文“.”号)

三,生成和运行容器:
    sudo docker run -d -p 8080:80 -p 2222:22 --name jws1 jexus:v1
    (注:意思是将容器的80、22端口映射到主机的8080和2222端口,以便外部访问;这个容器的名字叫“jws1”)
    (如果容器内网站要用https协议或者需要向外提供StateServer服务,还需分别将容器内443、42424端口映射到主机)

四,检查运行情况:
    sudo docker ps -a

五,检查容器中jexus服务情况:
    sudo curl localhost:8080/info

六、从主机进入容器,在容器内进行某些操作(比如修改httpd_config文件允许root登入等)
    进入:sudo docker exec -it jws1 /bin/bash
    退出:exit

    

 

posted @ 2017-07-05 09:58  b̶i̶n̶g̶.̶  阅读(441)  评论(0编辑  收藏  举报