91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS下如何創建基于supervisord的sshd和其它服務的Docker image

發布時間:2021-11-15 16:10:28 來源:億速云 閱讀:208 作者:小新 欄目:云計算

小編給大家分享一下CentOS下如何創建基于supervisord的sshd和其它服務的Docker image,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

1. 基于supervisord的sshd和httpd

獲取最新的centos鏡像

# docker pull centos:latest

編寫Dockerfile(支持apache+ssh服務)

# mkdir /home/Dockerfile/webserver
# cd /home/Dockerfile/webserver
# vim Dockerfile

Dockerfile內容如下:

# This is a base comment
FROM centos:latest
MAINTAINER renguijiayi

#yum install Package
RUN yum -y install net-tools
RUN yum -y install iputils  iproute  man  vim-minimal  openssh-server  openssh-clients
RUN yum -y install httpd
RUN yum -y install python-setuptools
RUN easy_install supervisor

#set sshd
RUN ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key
RUN ssh-keygen -q -N "" -t rsa -f /etc/ssh/ssh_host_rsa_key
RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ""
RUN sed -ri 's/session    required     pam_loginuid.so/#session    required     pam_loginuid.so/g' /etc/pam.d/sshd
RUN mkdir -p /root/.ssh && chown root.root /root && chmod 700 /root/.ssh
RUN echo 'root:qwe123' | chpasswd

#set supervisor
RUN mkdir -p /var/log/supervisor
ADD supervisord.conf /etc/supervisord.conf

#set port
EXPOSE 22
EXPOSE 80

#set ENV
ENV LANG en_US.UTF-8
ENV LC_ALL en_US.UTF-8

#run supervisor
CMD ["/usr/bin/supervisord -c /etc/supervisord.conf"]

通過supervisord來維護Docker容器中服務進程,編寫supervisord.conf:

# vi supervisord.conf
[supervisord]
nodaemon=true

[program:sshd]
command=/usr/sbin/sshd -D

[program:httpd]
command=/usr/sbin/httpd -DFOREGROUND

創建鏡像,運行:

# docker build -t test/webserver:v1 .

2. 基于supervisord的sshd和mysql

直接上Dockerfile:

FROM centos:centos6
 
MAINTAINER renguijiayi
 
RUN rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
RUN yum install -y openssh-server sudo mysql-server mysql supervisor
RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config
  
RUN useradd admin
RUN echo "admin:admin" | chpasswd
RUN echo "admin   ALL=(ALL)       ALL" >> /etc/sudoers
  
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
RUN mkdir /var/run/sshd
 
RUN /etc/init.d/mysqld start &&\
    mysql -e "grant all privileges on *.* to 'root'@'%' identified by 'letmein';"&&\
    mysql -e "grant all privileges on *.* to 'root'@'localhost' identified by 'letmein';"&&\
    mysql -u root -pletmein -e "show databases;"
 
RUN mkdir -p /var/log/supervisor
COPY supervisord.conf /etc/supervisord.conf
 
EXPOSE 22 3306
CMD ["/usr/bin/supervisord"]

在Dockerfile所在目錄下創建supervisord.conf文件,內容如下:

[supervisord]
nodaemon=true
 
[program:sshd]
command=/usr/sbin/sshd -D
 
[program:mysqld]
command=/usr/bin/mysqld_safe

在Dockerfile所在目錄下運行build命令來生成image文件,這里使用mysql_server作為image文件名:

sudo docker build -t myserver .

首先使用下面的命令來啟動容器:

sudo docker run --name=myserver -d -P myserver

啟動完容器后,可以使用“sudo docker ps”來查看,此時可以看PORTS列內容為“0.0.0.0:49171->22/tcp, 0.0.0.0:49172->3306/tcp”容器的22端口和3306端口會被映射到宿主機器的49171和49172端口。

可以通過下面的命令來訪問ssh和mysql服務:

ssh admin@<宿主機器> -p <宿主機器端口>
mysql -h <宿主機器> -u root -pletmein -P 49172

也可以使用“sudo docker inspect myserver | grep IPAddress”來查看容器IP地址,然后通過下面命令訪問ssh和mysql服務:

ssh admin@<容器機器IP> 
mysql -h <容器機器IP> -u root -pletmein

看完了這篇文章,相信你對“CentOS下如何創建基于supervisord的sshd和其它服務的Docker image”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湄潭县| 澜沧| 哈密市| 阿拉善右旗| 钟祥市| 故城县| 达拉特旗| 清远市| 双牌县| 辉南县| 个旧市| 琼海市| 都匀市| 文安县| 济南市| 茌平县| 突泉县| 灵川县| 永城市| 三台县| 会同县| 广东省| 建德市| 日照市| 延吉市| 黄梅县| 土默特左旗| 大田县| 涿鹿县| 乌鲁木齐市| 万州区| 淄博市| 饶阳县| 浦县| 昌黎县| 延庆县| 大英县| 成武县| 香格里拉县| 洛阳市| 临洮县|