[英]How to create a Docker image of centos provisioned with apache?
[英]how to create a docker centos image that would only run on centos
我是 docker 新手,我仍在努力學習這些概念。 在我的 centos 機器上,我創建了一個測試映像,其中包含一個 C 編譯的可執行文件。 根據我對 docker 的理解,我的意圖和期望是圖像只能在 centos 機器上運行。 這是我的 docker 文件:
FROM centos:7
WORKDIR /opt/MYAPPS
COPY my_hello .
CMD my_hello
該圖像在我創建的 centos 機器上構建並運行良好。 然后我將此圖像推送到我的存儲庫並將其拉到另一台 centos 機器上,並且也能正常工作。 到現在為止還挺好。
正如我所提到的,我希望這張圖片僅限於 centos。 為了證明這一點,我嘗試將它拉到其他操作系統、我的 ubuntu 和我的 Windows 上。 令我驚訝的是,它對兩者都有效。 顯然我錯過了一些東西。 要么我沒有掌握 docker 的概念,要么我使用了錯誤的“FROM”圖像。
正如我所提到的,我希望這張圖片僅限於 centos。
不:您在映像中放置的只是可執行文件運行的依賴項,但最終,一切都將解析為系統調用。
這意味着您的映像受到主機內核的限制,因為正在運行的進程正在對所述內核進行系統調用。
(如“ 迷人的 Linux 系統調用世界”中所示)
只要內核(這里是 Linux,甚至在 Windows 上,通過 HyperV)支持您的系統調用,您的程序就會在這些主機上運行。
請參閱“ Docker 如何使用不同內核運行發行版? ”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.