Pemasangan Linux docker dan ringkasan operasi asas docker

WBOY
Lepaskan: 2021-12-30 17:50:40
ke hadapan
2371 orang telah melayarinya

Artikel ini membawakan anda cara memasang docker pada Linux dan operasi asas docker saya harap ia akan membantu anda.

Pemasangan Linux docker dan ringkasan operasi asas docker

1. Pasang docker

Docker diperlukan untuk dijalankan pada Centos 7, sistem perlu 64-bit, dan versi kernel sistem ialah 3.10 ke atas

1.uname -an Lihat versi sistem semasa

2.yum install docker Muat turun dan pasang dockerApabila anda melihat maklumat dalam gambar di bawah, ia bermakna Pelabuhan tempatan telah berjaya dipasang Ia adalah sangat mudah. 🎜>

imej docker ll Semak sama ada mesin tempatan sudah mempunyai imej

Pada masa ini tiada imej dalam mesin Pergi ke Docker Hub untuk memuat turunnya (imej boleh disesuaikan, jadi saya tidak akan pergi ke butiran di sini)

docker search java, anda juga boleh menentukan versi tertentu untuk dimuat turun,

Contohnya: docker search Ubuntu : 1.2.5.4, anda boleh mencari Docker Hub dan banyak imej akan disenaraikan

Muat turun imej

docker tarik docker.io/nginx untuk memuat turun

Imej yang dimuat turun secara setempat adalah lebih besar daripada yang dicari di Docker Hub kerana ia dinyahmampat secara automatik semasa proses muat turun , apabila melihat senarai imej, anda akan melihat imej yang baru anda muat turun

Senarai termasuk nama gudang, label versi, ID imej, masa penciptaan dan ruang yang diduduki

Padam imej

Padam id imej docker rmi imej yang tidak berguna

3. Penciptaan dan pengurusan imej

Kami telah memuat turun imej Nginx tadi, dan maka kami akan mencipta bekas dengan hanya menjalankan docker aplikasi Nginx -i -t /bin/bash: -i: input standard ke bekas -t: peruntukan Terminal maya/bin/bash: laksanakan skrip bash,

mulakan bekas menggunakan imej docker.io/nginx, bernama container_nginx, -p 8080:80 bermaksud memetakan port kontena 80 ke port 8080 hos, supaya kami boleh mengakses perkhidmatan kontena sebagai asalkan kita mengakses port 8080 hos.

Nota

: Terdapat dua - di hadapan nama, dan -p di hadapan port docker.io/nginx ialah nama imej, 8080 ialah port hos , dan 80 ialah port aplikasi Nginx

Port pada hos hanya boleh dipetakan ke satu port kontena dan berbilang port kontena tidak boleh sepadan dengan satu port hos (jika kontena dipasang pada sistem seperti centos, port kontena boleh ditetapkan secara santai, tetapi jika kontena itu Ia hanya aplikasi mudah, maka port kontena harus menjadi port aplikasi itu sendiri)

Dengan cara ini kami mencipta dan memulakan bekas!

Mulakan Nginx selepas memasuki bekas

Pada masa ini, lawati http://51.110.218.9:8080/ dalam penyemak imbas untuk mengakses Nginx secara langsung dalam bekas

docker run -idt --name container_nginx -p 8080:80  docker.io/nginx
Salin selepas log masuk
Jika akses tidak berjaya, mungkin tembok api port hos dibuka Jalankan arahan berikut untuk menutupnya

Sejak Saya menggunakan pelayan Alibaba Cloud, perlu Buka port 8080 dalam Alibaba Cloud                                        

Docker start command ialah dan docker start command sebenarnya adalah docker start command. Mula-mula laksanakan docker create untuk mencipta bekas dan kemudian docker mula memulakan

Hos dan fail kontena Salin satu sama lain

exit 退出容器

docker ps 查看运行中的容器

docker ps -a  查看运行中和非运行中的所有容器

docker exec -it container_nginx /bin/bash  进入容器

如果容器还未启动 执行docker start container_nginx
Salin selepas log masuk

Sila ambil perhatian bahawa perkara di atas dua arahan dilaksanakan dalam hos dan tidak boleh dilaksanakan dalam bekas

whereis nginx 找Nginx的启动目录

[root@iz2zehzeir87zi8q99krk1z ~]# docker start container_nginx
container_nginx
[root@iz2zehzeir87zi8q99krk1z ~]# docker exec -it container_nginx /bin/bash
root@84683e425116:/# whereis  nginx
nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx
root@84683e425116:/#  /usr/sbin/nginx
Salin selepas log masuk

docker cp container_nginx:/usr/local/xin.txt /usr/local/software/ 容器向主机复制文件
docker cp /usr/local/xinzhifu.txt container_nginx:/usr/local/ 主机向容器复制文件

这样一个基础的docker容器就创建完了 。。。。。。。。。。。。

反过来大家再看一看docker的容器与镜像的区别 https://www.cnblogs.com/linjiaxin/p/7381421.html

那么其实镜像与容器的本质区别并不大,那么镜像可以生成容器 ,容器是否可以做成镜像呢?

docket commit container_nginx  image_nginx:v1
             
              容器名            自己起一个镜像的名字:版本号
Salin selepas log masuk

用当前的容器生成了redis镜像

例如:A、B两台机器都想安装redis,A机器上创建容器并在容器中做好redis的一切配置,让后将这个容器docker commit 成镜像image_redis,B机器也想要安装redis,直接用镜像image_redis创建容器就行了,docker就是做这样一劳永逸的事情。

而且传统方式得在每台机器上安装配置redis非常麻烦

四.镜像的导入与导出

镜像压缩打包 (主机上进行操作),有两种方式 docker save 与 docker load 和 docker export 与 docker import

docker save nginx | gzip > nginx_xin_image.tar.gz  将现有的镜像压缩打包

docker load -i nginx_xin_image.tar.gz  压缩的镜像解压

docker images 进行查看
Salin selepas log masuk

docker save 是直接将镜像进行打包 docker save <镜像名>或<镜像id>

docker export container_nginx> nginx_image.tar  

cat nginx_image.tar | sudo docker import  - nginx_image:import
Salin selepas log masuk

docker export 是直接将容器进行打包   docker save <容器名>或<容器id> 

需要注意两种方法配套的,切不可混用。虽然导入导出时没问题,但是在创建容器时候会报错

如果使用import导入save产生的文件,虽然导入不提示错误,但是启动容器时会提示失败,

会出现类似"docker: Error response from daemon: Container command not found or does not exist"的错误。

类似,使用load载入export产生的文件,也会出现问题。

相关推荐:《Linux视频教程

Atas ialah kandungan terperinci Pemasangan Linux docker dan ringkasan operasi asas docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:csdn.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!