发牌SO 发表于 2017-12-6 11:04:57

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
EXPOSE22 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
页: [1]
查看完整版本: jexus docker