Score:0

คำสั่งไพพ์ไปยังคอนเทนเนอร์นักเทียบท่าทำงานผ่าน sshd

ธง in

ฉันกำลังตั้งค่าสภาพแวดล้อมให้ผู้ใช้ลงชื่อเข้าใช้เครื่องผ่าน ssh เมื่อเข้าสู่ระบบ คอนเทนเนอร์นักเทียบท่าถูกสร้างขึ้นทันทีและถูกลบออกเมื่อผู้ใช้ออกจากระบบ

วิธีนี้ใช้งานได้อย่างมีเสน่ห์แบบโต้ตอบ แต่คุณไม่สามารถส่งคำสั่งได้ ssh -p 222 [email protected] "ก้อง บลา" ไปมัน สิ่งที่คุณได้รับคือ อุปกรณ์อินพุตไม่ใช่ TTY

การกำหนดค่าปัจจุบันคือ:

sshd_config:

กลุ่มการแข่งขัน *
    forceCommand sudo /usr/local/bin/docker_shell.sh

/usr/local/bin/docker_shell.sh:

#!/bin/sh

UID=`id -u`
GID=`id -g`

HOME=`getent passwd $USER | ตัด -d: -f6`

/usr/bin/docker run --rm -w /home/$USER -v $HOME:/home/$USER \
         -v /run/mysqld/mysqld.sock:/run/mysqld/mysqld.sock \
         --ชนิดเมานต์=tmpfs,ปลายทาง=/tmp,tmpfs-size=10240000,tmpfs-mode=1777 \
         --user $UID:$GID -ti localregistry/shell_custom:0.5

Dockerfile สำหรับคอนเทนเนอร์ shell_custom นั้นไม่สำคัญ:

จากเทือกเขาแอลป์:ล่าสุด

RUN apk เพิ่ม --no-cache bash && \
    apk เพิ่ม - ไม่มีแคช mysql-client

คัดลอก bashrc /etc/profile

CMD ["/bin/bash", "--rcfile", "/etc/profile"]

ตอนนี้ฉันจะหลีกเลี่ยงปัญหา "อุปกรณ์อินพุตไม่ใช่ TTY" ได้อย่างไร คำใบ้ใด ๆ

ขอบคุณ

เอคเคฮาร์ด

djdomi avatar
za flag
บางทีคุณสามารถดู [สิ่งนี้] (https://stackoverflow.com/questions/43099116/error-the-input-device-is-not-a-tty)

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา