以下は、docker の golang イメージに基づいて ssh サービスを構築するためのコードです。具体的な内容は次のとおりです。 # golang:ee23292e2826 からの最新イメージ # 著者 メンテナー [email protected] # Golang環境変数ENV GOPROXY https://goproxy.cn,directを追加します ENV GO111MODULEオン # apt-get source を設定 ADD sources.list /etc/apt/ # apt-get source を更新 ssh サービスをインストール ルートパスワードを変更 ssh サービスを設定 ルートのリモートログインを許可 /root/ip.sh に「ssh サービスを有効にする アドレス情報を /root/ip.txt に書き込み、tail -f」と書き込み ip.sh 実行権限を付与 RUN apt-get update \ && apt-get -y 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"]を実行する コマンド ["/root/ip.sh"]
PS: CentOS の sshd と golang 環境をベースにした Docker 1. Dockerファイル #centos7 イメージを centos:centos7 から継承 メンテナー tpythoner [email protected]" #yum install sshd サービス #RUN yum install -y openssh openssh-server openssh-clients yum install -y openssh-serverを実行します。 #sshdを作成する 実行 mkdir /var/run/sshd ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key を実行します。 ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key を実行します。 #ルートパスワードを設定し、tpythonerユーザーを追加します RUN /bin/echo 'root:mypwd' |chpasswd useradd tpythonerを実行します /bin/echo 'tpythoner:mypwd' |chpasswd を実行します。 #PAM 制限を解除 RUN /bin/sed -i 's/.*session.*required.*pam_loginuid.so.*/session オプション pam_loginuid.so/g' /etc/pam.d/sshd /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local を実行します。 #golangをインストールする #yum install -y wget を実行します #run wget http://golangtc.com/static/go/go1.4.2.linux-amd64.tar.gz を実行します #実行 tar zxvf go1.4.2.linux-amd64.tar.gz -C /usr/local/ go1.4.2.linux-amd64.tar.gz /rootを追加します golang.conf を追加します /root/golang.conf 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 実行 cat /root/golang.conf >> /etc/profile 実行 echo "source /etc/profile" >> /root/.bashrc mkdir -p /home/golang を実行します。 # 開発ポート EXPOSE 22 エクスポーズ80 #sshd サービスを開始 CMD /usr/sbin/sshd -D 2. golang.conf GOROOT=/usr/local/go をエクスポートします。 エクスポート GOBIN=$GOROOT/bin エクスポート PATH=$PATH:$GOBIN GOPATH=/home/golang をエクスポートする 3. go1.4.2.linux-amd64.tar.gzをダウンロードする
4. 新しいDockerイメージを作成する
5. イメージを実行してコンテナを生成する docker run -d -p 2222:22 -p 80:80 centos:go_sshd #警告: リモートホストの識別が変更されました! というメッセージが表示された場合 エコー '' >> ~/.ssh/known_hosts 6. go_sshdコンテナに接続する
golang イメージをベースに docker で ssh サービスを構築する方法については、これで終わりです。docker で ssh サービスを構築する方法については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
>>: UnityはMySQLに接続し、テーブルデータの実装コードを読み取ります
この記事では、アコーディオン効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...
目次概要最初のステップステップ2なぜ別の _data が必要なのでしょうか?データにもう少しデータを...
1つ: 1.セマンティック タグは単なる HTML であり、CSS にはセマンティクスはありません...
最近、WeChatアプレットを書いていたとき、WeChatアプレットではすべてのリクエストインターフ...
<br />HTML 言語では、タグを使用してテーブルにタイトルを自動的に追加できます。...
展示する デザインパスワード強度分析パスワードは数字、文字、特殊記号で構成されていますパスワード: ...
目次MySQL クライアント/サーバー プロトコルMySQL サーバーから高いパフォーマンスを得る必...
なぜ権限管理が必要なのでしょうか? 1. コンピュータ リソースは限られているため、コンピュータ リ...
地球の円周率と半径、検索ポイントの経度と緯度から、検索ポイントと検索データテーブル間の距離はNキロメ...
序文MySQL では、クロスデータベース クエリは主に 2 つの状況に分けられます。1 つは同じサー...
目次Dockerfileを使用してDockerイメージを構築する1. Dockerfile とは何で...
目次スクロールをスムーズにするBetterScrollのスクロール体験慣性ローリングエッジリバウンド...
フレーム ウィンドウの関連付けを実現するには、次に示すように、ハイパーリンクの「ターゲット」ウィンド...
多くのアプリやウェブサイトでは、ログインやアカウント登録の際にSMS認証コード1を送信する場所があり...
MySQL は、スウェーデンの会社 MySQL AB によって開発され、現在は Oracle が所有...