Docker使用開啟systemctl功能的cenos7映象
官網上說Systemd已經整合到最新的centos:7和centos:latest的基礎映象裡面了,但是預設並沒有啟用。
所以許多小夥伴不能直接使用Systemctl來開啟一些服務,這個非常讓人捉急,許多小夥伴根本不知道怎麼解決。
下面就簡單說一下如何解決這個問題:
首先,根據官網的提示,編寫整理適合自己的Dockerfile檔案,內容如下:
#centos with systemctl\ssh\...
FROM centos
ENV container docker
MAINTAINER Eli Kang <[email protected]>
RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
rm -f /lib/systemd/system/multi-user.target.wants/*;\
rm -f /etc/systemd/system/*.wants/*;\
rm -f /lib/systemd/system/local-fs.target.wants/*; \
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
rm -f /lib/systemd/system/basic.target.wants/*;\
rm -f /lib/systemd/system/anaconda.target.wants/*;
RUN yum -y install net-tools
RUN yum -y install iproute
RUN yum -y install vim-enhanced
RUN yum -y install sudo passwd
RUN yum -y install iptables
RUN yum -y install openssl openssh-server
RUN ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
RUN ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''
RUN sed -i "s/#UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config
RUN sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config
RUN sed -i "s/#Port.*/Port 20022/g" /etc/ssh/sshd_config
RUN echo "root:123456" | chpasswd
EXPOSE 20022
VOLUME [ "/sys/fs/cgroup" ]
CMD ["/usr/sbin/init"]
配置檔案已經帶上了一些常用的工具,如果有其他需要可以自行新增。
映象需要以在後臺執行,可以通過ssh進行連線,為了避免衝突,映象的ssh埠已經修改為了20022.
預設的root密碼已經修改為了123456,如有需要可以自行修改。
執行的時候需要以如下方式執行容器:
docker run --privileged -dti -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 20022:20022 local/centos_ssh
然後就可以通過ssh連線映象了,訪問的IP就是docker容器所在host的IP。
連線之後的centos就可以使用systemctl了,趕快試一試吧!
本文由elikang整理,鑑於本人知識能力的不足,本文許多欠缺之處,歡迎討論指正。
歡迎加QQ群討論 :雲端計算- 532524739 ,聚焦docker && openstack。群裡會不斷分享有關雲端計算的資料。
相關推薦
Docker使用開啟systemctl功能的cenos7映象
官網上說Systemd已經整合到最新的centos:7和centos:latest的基礎映象裡面了,但是預設並沒有啟用。 所以許多小夥伴不能直接使用Systemctl來開啟一些服務,這個非常讓人捉急,許多小夥伴根本不知道怎麼解決。 下面就簡單說一下如何解決這個問題: 首先
關於Centos7和Centos6中新分區如何開啟acl功能
新分區 如何開啟 功能 關於Centos7和Centos6中新分區如何開啟acl功能Centos7第一步:df:查看文件系統使用情況信息第二步:fdisk查看所有分區的詳細信息第三步:開始分區fdisk /dev/sda第四步:完成後更新分區,查看新分區第五步:在
如何探測瀏覽器是否開啟js功能
ext 禁用 size class java browser you 如何 write <body> ... ... <script type="text/javascript"> <!-- document.
S9306開啟web功能!
str ctrl+ series serve byte -o file stat http S9306開啟web功能,有的裏邊已經有web,直接建立用戶分配權限即可,如沒有web按如下操作!****1、定義好tftp的文件路徑[圖片] 2、zz文件夾裏面放好文件web 3、
hive優化,開啟壓縮功能
調整 配置 emp mapr org format compress 數據傳輸 span 1、開啟hive作業mapreduce任務中間壓縮功能: 對於數據進行壓縮可以減少job中map和reduce task間的數據傳輸量。對於中間數據壓縮,選擇一個低cpu開銷編/解碼器
第十一篇- 實現APK開啟檔案功能
MainActivity.java package com.example.aimee.aimeetest3; import android.content.Context; import android.content.Intent; import android.net.Uri; import
docker推送自己的映象到docker hub
環境: CentOS Linux release 7.4.1708 (Core) Linux核心:3.10.0-693.el7.x86_64 Docker: Client: 18.06.1-ce Server: 18.06.1-ce 構建自己的映象 # 建立一個
docker學習系列-jdk基礎映象製作
準備一臺安裝有docker服務的機器 1.編輯Dockerfile vim Dockerfile FROM centos:latest ADD ./jdk-8u141-linux-x64.tar.gz /usr/local ENV JAVA_HOM
SpringBoot專案(單模組、多模組)使用docker容器執行jar包映象(踩坑)
SpringBoot專案(單模組、多模組)使用docker容器執行jar包映象(踩坑) 1.mavem docker外掛配置 <!--docker 外掛配置--> <build> <finalName>生成jar包的名稱</
docker簡易使用中國官方映象加速
docker簡易使用中國官方映象加速 通過 Docker 官方映象加速,中國區使用者能夠快速訪問最流行的 Docker 映象。該映象託管於中國大陸,本地使用者現在將會享受到更快的下載速度和更強的穩定性,從而能夠更敏捷地開發和交付 Docker 化應用。 Docker 中國官
docker實戰之使用mysql映象與wordpress映象搭建個人部落格
這次我打算寫一個實戰教程,以前寫的教程大多數是根據自己掌握的知識去寫的,並非實戰,這次試一下吧 首先docker這個東西我強烈推薦學習,因為真的很好用 下面先開始吧,廢話不多說,基礎的連線伺服器這些我就不囉嗦了,自個去百度吧,貌似我部落格也有 首先,使用yum安裝docker,命令如下
Docker 三個基本概念——映象、容器、倉庫
文章目錄 1、映象 (Image) 2、容器 (Container) 3、倉庫 (Repository) 3.1、倉庫註冊伺服器 4、映象與容器的關係 5、映象、容器、倉庫 執行關係圖:
Docker操作刪除所有容器映象
借鑑部落格:https://www.cnblogs.com/yanyouqiang/p/8301856.html https://blog.csdn.net/wy_97/article/details/79561813 這個部落格裡面只有停用,刪除容器,沒有刪除映象的命令 &nbs
Docker-獲取和使用Ubuntu映象
獲取映象 sudo pull [選項] [Docker Registry 地址[:埠號]/]倉庫名[:標籤] 例如:sudo pull ubuntu:16.04 執行映象 docker run -it --rm \ubuntu:16.04 \bash 注:-i是互動式
debian系統下apache2開啟ssi功能
SSI (Server Side Include)的 html 副檔名 (.shtml), 通常稱為"伺服器端嵌入"或者叫"伺服器端包含"說白了就是類似其他語言如 PHP include 引入其他檔案,SSI 是通過配置伺服器,一個靜態 html 檔案引入另一個 html 檔案的功能 被包含檔案與父檔案存在
Docker容器-構建Tomcat業務映象
接著上一篇文章來構建Tomcat業務映象,上篇已經把tomcat基礎映象已經完成了。這次基於tomcat基礎映象構建實際業務映象。 退到tomcat目錄下,新建兩個業務用的目錄檔案 [[email protected] /data/dockerfile/web/tomcat/tomcat-bas
docker定義、安裝、映象、容器
Docker是什麼 使用最廣泛的開源容器引擎 一種作業系統級的虛擬化技術 依賴於Linux核心特性:Namespace(資源隔離)和Cgroups(資源限制) 一個簡單的應用程式打包工具 Docker設計目標 提供簡單的應用程式打包工具 開發人員和運維人員職責邏輯分離
Docker基礎篇2:映象管理
1、映象簡介 簡單說,Docker映象是一個不包含Linux核心而又精簡的Linux作業系統。 映象不是一個單一的檔案,而是有多層構成。我們可以通過docker history <ID/NAME> 檢視映象中各層內容及大小,每
docker開啟加速(第三篇)
前言: docker的映象倉庫在國外,下載會很慢,啟用阿里雲加速。 第一步:cd /etc/docker目錄下,開啟daemon.json 第二步:修改daemon.json檔案,新增阿里雲加速: { "registr
haproxy開啟日誌功能!
服務端: 修改配置檔案: [[email protected] /]# vim /etc/rsyslog.conf ...... $ModLoad imudp $UDPServerRun 514 $ModLoad imtcp $InputTCPServerRun 5