• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    docker 基于golang镜像构建 ssh服务的方法

    下面给大家介绍下docker 基于golang镜像构建 ssh服务的代码,具体内容如下所示:

    # golang:latest镜像
    FROM ee23292e2826
    # 作者
    MAINTAINER dechao@qq.com
    # 添加Golang环境变量
    ENV GOPROXY https://goproxy.cn,direct
    ENV GO111MODULE on
    # 配置apt-get源
    ADD sources.list /etc/apt/
    # 更新apt-get源 安装ssh服务 修改root密码 配置ssh服务允许root远程登录 写"开启ssh服务 写地址信息到/root/ip.txt 并tail -f"到/root/ip.sh 赋予ip.sh执行权限
    RUN apt-get update \
    
    && apt-get -y install ssh \
    
    && echo "root:1" | chpasswd  \
    
    && echo "PermitRootLogin yes" >> /etc/ssh/sshd_config \
    
    && echo "service ssh start && ip addr | grep global > /root/ip.txt && tail -f /root/ip.txt" > /root/ip.sh \
    
    && chmod +x /root/ip.sh
    # 启动时执行
    ENTRYPOINT ["sh","-l"]
    CMD ["/root/ip.sh"]

    -p 主机地址:主机端口:容器端口
    -v 主机卷:容器卷
    docker run -itd -p 2222:22 -v /root/fserver/:/go/src/fserver 4618

    PS:基于CentOS下sshd和golang环境的Docker

    1、Dockerfile文件

    #继承centos7镜像
    FROM        centos:centos7
    MAINTAINER  tpythoner tpythoner@gmail.com"
     
    #yum安装sshd服务
    #RUN         yum install -y openssh openssh-server openssh-clients
    RUN         yum install -y openssh-server
     
    #创建sshd
    RUN         mkdir /var/run/sshd
    RUN         ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
    RUN         ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
     
    #设置root密码以及添加tpythoner用户
    RUN         /bin/echo 'root:mypwd' |chpasswd
    RUN         useradd tpythoner
    RUN         /bin/echo 'tpythoner:mypwd' |chpasswd
     
    #取消pam限制
    RUN         /bin/sed -i 's/.*session.*required.*pam_loginuid.so.*/session optional pam_loginuid.so/g' /etc/pam.d/sshd
    RUN         /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local
     
    #安装golang
    #RUN                    yum install -y wget
    #RUN                    wget http://golangtc.com/static/go/go1.4.2.linux-amd64.tar.gz
    #RUN                    tar zxvf go1.4.2.linux-amd64.tar.gz -C /usr/local/
    ADD                     go1.4.2.linux-amd64.tar.gz /root
    ADD                     golang.conf /root/golang.conf
    RUN                     mv /root/go /usr/local/
    #RUN                    echo "export GOROOT=/usr/local/go" >> /etc/profile
    #RUN                    echo "export GOBIN=$GOROOT/bin" >> /etc/profile
    #RUN                    echo "export PATH=$PATH:$GOBIN" >> /etc/profile
    #RUN                    echo "export GOPATH=/home/golang" >> /etc/profile
    RUN                     cat /root/golang.conf >> /etc/profile
    RUN                     echo "source /etc/profile" >> /root/.bashrc
    RUN                     mkdir -p /home/golang
    #开发端口
    EXPOSE      22
    EXPOSE      80
    #启动sshd服务
    CMD                     /usr/sbin/sshd -D

    2、golang.conf

    export GOROOT=/usr/local/go
    export GOBIN=$GOROOT/bin
    export PATH=$PATH:$GOBIN
    export GOPATH=/home/golang

    3、下载go1.4.2.linux-amd64.tar.gz

    wget http://golangtc.com/static/go/go1.4.2.linux-amd64.tar.gz

    4、创建新的docker images

    docker build -rm -t centos:go_sshd .

    5、运行镜像生成容器

    docker run -d -p 2222:22 -p 80:80 centos:go_sshd
    #如果遇到WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
    echo '' >> ~/.ssh/known_hosts

    6、连接go_sshd容器

    ssh root@192.168.59.103 -p 2222    #ip为容器ip 密码为Dockerfile中的:mypwd

    到此这篇关于docker 基于golang镜像构建 ssh服务的文章就介绍到这了,更多相关docker构建 ssh服务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    上一篇:nginx配置虚拟主机的详细步骤
    下一篇:docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    docker 基于golang镜像构建 ssh服务的方法 docker,基于,golang,镜像,构建,