docker學習筆記(一)docker的介紹和安裝
docker的介紹和安裝
一.docker 介紹
docker 可以粗糙的理解為虛擬機,但是確實不是真正的虛擬機,通常形容它是一個開掛的chroot
二.在linux下安裝 docker
第二句命令的含義是修改? centos 的普通用戶imooc到 docker 組里面,這樣不需要用root 用戶就可以執行docker 的命令
systemctl start docker.service? ?啟動docker
docker? -v? ?或者 docker info
docker? images 查看 本地docker 已經安裝的鏡像
docker rmi 鏡像名稱? ? ?刪除鏡像
docker run -p 8080:80 -d daocloud.io/nginx? 運行一個nginx 鏡像? ?-p 參數 將 nginx 的80端口映射成本地的8080端口
-d? 以守護進程的方式在后臺運行
docker? -ps 查看 正在運行的容器
docker cp index.html? 容器id://usr/share/nginx/html? ? 將index.html拷貝到指定的容器目錄里面
docker? stop? 容器id? 停止容器的運行
三.Dockerfile 的形式構建一個鏡像并運行
實戰(1)
首先編寫一個最簡單的Dockerfile文件 ,注意名字通常就寫成Dockerfile,內容如下
FROM alpine:latest
MAINTAINER duanzhaoxu
CMD echo ‘hello docker’
第一句from 從遠端拉取alpine:latest,第二句沒有實際意義,代表此Dockerfile是duanzhaoxu寫的,第三句代表構建好此docker鏡像之后,運行此鏡像會輸出 hello docker
docker? build -t? hello_docker? Dockerfile的目錄? ? 注意:-t 表示指定構建指定目錄下的Dockerfile 之后的鏡像 倉庫名稱
docker images
docker run? hello_docker? 運行docker鏡像輸出hello docker
實戰(二)
FROM ubuntu
MAINTAINER DZX
RUN apt-get update
RUN apt-get install -y nginx
COPY index.html ?/var/www/html
ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"]
EXPOSE 80
[root@localhost so]# mkdir docker222
[root@localhost so]# vim Dockerfile
[root@localhost so]# vim Dockerfile
[root@localhost so]# ll
總用量 1604
drwxr-xr-x. 2 root root 24 8月 3 19:47 docker111
drwxr-xr-x. 2 root root 6 8月 3 19:55 docker222
-rw-r--r--. 1 root root 166 8月 3 20:16 Dockerfile
-rw-r--r--. 1 root root 1440662 6月 21 10:24 jna-4.5.1.jar
-rw-r--r--. 1 root root 1010 6月 25 10:02 jnatest1.java
-rw-r--r--. 1 root root 174896 6月 21 16:18 libvehicleTurn1806212.so
-rw-r--r--. 1 root root 297 6月 21 11:47 test180625.cpp
-rw-r--r--. 1 root root 1542 6月 21 16:19 TestVehicleTurn.class
-rw-r--r--. 1 root root 2025 6月 21 16:19 TestVehicleTurn.java
-rw-r--r--. 1 root root 612 6月 21 16:19 TestVehicleTurn$Lig.class
[root@localhost so]# cp Dockerfile ./docker222
[root@localhost so]# cd docker222
[root@localhost docker222]# ll
總用量 4
-rw-r--r--. 1 root root 166 8月 3 20:16 Dockerfile
[root@localhost docker222]# vim index.html
[root@localhost docker222]# docker build -t dzx/hello-nginx .
Sending build context to Docker daemon 3.072 kB
Step 1/7 : FROM ubuntu
Trying to pull repository docker.io/library/ubuntu ...
latest: Pulling from docker.io/library/ubuntu
c64513b74145: Pull complete
01b8b12bad90: Pull complete
c5d85cf7a05f: Pull complete
b6b268720157: Pull complete
e12192999ff1: Pull complete
Removing intermediate container c1581280d1ee
Successfully built 2a88d3ddfc14
[root@localhost docker222]# docker im
image images import
[root@localhost docker222]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dzx/hello-nginx latest 2a88d3ddfc14 29 seconds ago 182 MB
hello_docker latest 24f45ccc6e6c 32 minutes ago 4.41 MB
docker.io/ubuntu latest 735f80812f90 7 days ago 83.5 MB
daocloud.io/nginx latest c82521676580 9 days ago 109 MB
docker.io/rabbitmq 3.7.7-management 8c06649c0351 2 weeks ago 149 MB
docker.io/alpine latest 11cd0b38bc3c 3 weeks ago 4.41 MB
[root@localhost docker222]# docker run -d -p 80:80 dzx/hello-nginx
f6cfd5f4aee49a2a912fbb62c83d954c051ba8ab2c77805ebe5078cba7e10478
[root@localhost docker222]# curl localhost:
jitnian tianqi henhao
例如a 鏡像有10層,b鏡像有7層,可能有5層是共享的,這樣對于docker容器的壓力會小很多。
Docker 容器
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。