在 docker 里面启动sshd 服务

创建日期: 2024-01-19 11:25 | 作者: 风波 | 浏览次数: 13 | 分类: Docker

docker-compose.yml

version: '3' 
services:
  crawler:
    image: quay.io/centos/centos:stream8
    container_name: crawler
    entrypoint: /docker-entrypoint.sh
    #command:
    #  - "sleep"
    #  - "10000000"
    #ports:
    #  - "37700:7700"
    working_dir: /app
    volumes:
      - ./:/app
      - ./venv:/opt/venv
      - ./docker-entrypoint.sh:/docker-entrypoint.sh
      - /etc/localtime:/etc/localtime
      - ./bashrc:/root/.bashrc
    user: root
    network_mode: bridge
    #environment:

entry-point.sh

#!/bin/bash

function start_cmd()
{
    source /opt/venv/bin/activate
    #cd /root/workspace/webcrawler/apps.weixinqqq.com/
    #./start-crawler.sh dapenti.py -D --loop
    #./start-crawler.sh weixin.py -D --loop
    #cd /app && ./start-crawler.sh bbc-zhongwen.py -D --loop -t 3,10
    crond -p

    exec /usr/sbin/sshd -D
}

flagfile="/.inited.flag"
if [ -f "${flagfile}" ] ; then
    start_cmd
    exit 0
fi

s_https_proxy=${https_proxy}
s_http_proxy=${http_proxy}
s_all_proxy=${all_proxy}
unset https_proxy
unset http_proxy
unset all_proxy

env

yum install -y procps iproute vim git cronie

yum install -y openssh-server
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key

yum install -y python38
python3 -m venv /opt/venv
/opt/venv/bin/pip install -r /app/requirements.txt -i https://pypi.douban.com/simple/ --trusted-host pypi.douban.com

touch "${flagfile}"

export https_proxy=$s_https_proxy
export http_proxy=$s_http_proxy
export all_proxy=$s_all_proxy

start_cmd
exit 0
13 浏览
0 评论