美文网首页
配置使用Docker构建的Gogs的SSH

配置使用Docker构建的Gogs的SSH

作者: 怎么吃都不胖丶 | 来源:发表于2017-11-15 11:36 被阅读0次

    配置完后可以使得Gogs的ssh地址不需要端口

    1. 创建git用户并把git用户设置uid1000sudo useradd git -u 1000
    2. 创建一个存放gogs container的目录,并把目录所有者授予git用户,sudo chown -R git:git your_path
    3. 切换到git用户,共享.ssh目录:
    ln -s your_path/git/.ssh ~/.ssh
    
    1. 生成git用户的public keyssh-keygen然后接三个回车
    2. 把生成的id_rsa.pub附加到authorized_keys文件:
    cat id_rsa.pub >> authorized_keys | echo -n 'no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ' >> authorized_keys
    
    1. 切换到root用户或者具备sudo权限的用户,运行下面这个脚本:
    mkdir -p /app/gogs/
    cat >/app/gogs/gogs <<'END'
    #!/bin/sh
    ssh -p your_ssh_port -o StrictHostKeyChecking=no git@127.0.0.1 \
    "SSH_ORIGINAL_COMMAND=\"$SSH_ORIGINAL_COMMAND\" $0 $@"
    END
    chmod +x /app/gogs/gogs
    
    1. Enjoy it!

    Tips: gitsh不能设置为git-shell

    Final

    经过本人折腾的经历发现,当删除一个秘钥的时候,整个authorized_keys文件都会被清空。所以目前本人已经放弃在docker-compose中集成Gogs了。

     二进制大法好!
    

    相关文章

      网友评论

          本文标题:配置使用Docker构建的Gogs的SSH

          本文链接:https://www.haomeiwen.com/subject/ioecvxtx.html