Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Asas Docker menyusun struktur fail dan alat pemasangan (contoh terperinci)

Asas Docker menyusun struktur fail dan alat pemasangan (contoh terperinci)

WBOY
WBOYke hadapan
2022-02-07 17:39:404579semak imbas

Artikel ini membawa anda pengetahuan tentang karang dalam buruh pelabuhan, termasuk struktur fail karang dan pengetahuan tentang memasang alat karang buruh pelabuhan saya harap ia akan membantu anda.

Asas Docker menyusun struktur fail dan alat pemasangan (contoh terperinci)

Apakah karang buruh pelabuhan?

Karang Docker ialah fungsi orkestrasi kontena yang mengatur dan menyatukan pelayan berbeza yang berjalan dalam bekas yang berbeza.

boleh digunakan untuk pengurusan bersatu kebanyakan bekas: termasuk tetapi tidak terhad kepada: rangkaian, port, lekap, dll. boleh digunakan untuk melaksanakan pengelompokan bekas boleh digunakan untuk satu siri operasi yang berkaitan dengan bekas dan imej adalah fungsi untuk menguruskan bekas

1. mengarang struktur fail

1. yml file. Jadi apakah itu fail yml?

fail yml ialah fail dalam format nilai kunci.

fail yml sangat sensitif kepada format Anda perlu memberi perhatian kepada perkara berikut:

Hanya mengenali lekukan ruang dan tidak mengecam bentuk lekukan tab. kekunci
  1. Biasanya bahagian permulaan diinden dengan dua ruang
  2. diikuti dengan satu ruang, termasuk tetapi tidak terhad kepada: bertindih, koma, bar mendatar dan aksara lain. Aksara mesti diinden dengan satu ruang
  3. Sokongan menggunakan # untuk ulasan
  4. Jika aksara khas disertakan, ia perlu dipetik dalam petikan tunggal
  5. Nilai Boolean mesti disertakan dalam petikan
  6. Contohnya:

format fail yml, seperti di atas, memerlukan surat-menyurat satu peringkat dan terdapat dua ruang antara tahap yang berbeza.
  house:
    family:
      name: Doe
      parents: 
        - John
        - Jane
      children: 
        - Paul
        - Mark
        - Simone
    address: 
      number: 34
      street: Main Street
      city: Nowheretown
      zipcode: 1234

Nota: Jika kunci mempunyai berbilang nilai dalam satu tahap, ia boleh digunakan di peringkat seterusnya Ia juga mempunyai dua ruang kosong, bermula dengan sempang pendek dan menulis seberapa banyak sempang akhir di sana ialah beberapa nilai. 2. Medan yang biasa digunakan dalam konfigurasi Karang >dockerfile

: Kaedahnya adalah dengan menggunakan dockerfile untuk membina

konteks

: Laluan perkhidmatan fail docerfile
字段 描述
build dockerfile centext 指定Dockerfile文件名构建镜像上下文的路径
images 指定镜像
command 执行命令,覆盖默认命令
container name 指定容器名称,由于容器名称是唯一的。如果指定自定义名称,则是无法创建scale
deploy 指定部署和运行服务相关配置,只能再Swarm模式使用
environment 添加环境变量
networks 加入网络
ports 暴露容器端口,与-p相同,但是端口号必须大于60
volumts 挂载宿主机路径或者命令卷
restart 重启策略,默认no,always, on-failure,unless-stoped
hostname 容器主机名

imej: Anda boleh menentukan nama imej yang akan digunakan, contohnya :images: Nama imej, nota: terdapat ruang selepasnya

arahan: laksanakan pernyataan

nama bekas: digunakan untuk menyatakan nama bekas , kerana nama bekas itu unik. Jika anda menentukan nama tersuai, anda tidak boleh menskalakan (sediakan set replika)

# Set replika: Buat imej menjadi berbilang bekas Persekitaran berjalan dan aspek lain bagi berbilang bekas ini adalah sama. Apabila bekas dalam seni bina kontena digantung, anda boleh terus memulakan bekas yang sama untuk mengekalkan bilangan set replika Ini ialah konsep set replika, dan ia juga merupakan teras K8. Boleh meningkatkan kelajuan perkhidmatan mikro, meningkatkan pemulihan bencana dan prestasi serentak yang tinggi

kerahkan

: Ia adalah pengawal, dan dalam k8 ia adalah pemalam yang mengawal dan mengurus set replika menarik status tertutup. Bekas, apabila gagal, hanya akan memulakan bekas dengan kod pulangan bekas bukan sifar

3 Perintah luaran biasa Karang

docker compose基本使用格式:docker-compose [options] [COMMAND] [ARGS…]

docker-compose选项

  1. –verbose:输出更多调试信息
  2. –version:打印版本并退出
  3. -f /–file FILE:使用特定的compose模板文件,默认为docker-compose.yml
  4. -p /–project-name NAME:指定项目名称,默认使用目录名称

二、安装docker compose工具

1、下载

curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

首次连接下载的时候,可能会提示失误或者连接不上,可能是因为网络原因,可以多试几次

2、添加权限

文件在刚下载之后,默认是没有执行权限的,所以需要手动添加执行权限

chmod +x /usr/local/bin/docker-compos

3、运行docker-compose

docker-compose

可以看到,现在已经正常执行了

三、编译镜像

手动创建下面的文件(dockerfile文件之前有的话,直接拉取过来也是可以的)

tree
.
├── docker-compose.yml
├── nginx
│   ├── Dockerfile
│   ├── nginx-1.12.0.tar.gz
└── wwwroot
    └── index.html

其中yml文件内部

cat docker-compose.yml

version: '3'
services:
  nginx:
    hostname: nginx
    build:
      context: ./nginx
      dockerfile: Dockerfile
    ports:
      - 1321:80
      - 1707:443
    networks:
      - cluster
    volumes:
      - ./wwwroot: /usr/local/nginx/html
networks:
  cluster:

nginx的dockerfile文件

cat ./nginx/Dockerfile

FROM centos:7
ADD nginx-1.12.0.tar.gz /tmp
RUN yum -y install pcre-devel zlib-devel gcc gcc-c++ make &> /dev/null \
    && useradd -M -s /sbin/nologin nginx \
    && cd /tmp/nginx-1.12.0/ \
    && ./configure \
    --prefix=/usr/local/nginx \
    --user=nginx \
    --group=nginx \
    --with-http_stub_status_module &> /dev/null \
    && make &> /dev/null \
    && make install &> /dev/null
VOLUME ["/usr/local/nginx/html"]
EXPOSE 80
CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"]

index.html文件中就是自己配置的网页信息,就不多做介绍了

确定之后,编译

docker-compose -f docker-compose.yml up -d

查看运行结果

docker ps -a

CONTAINER ID   IMAGE                 COMMAND                  CREATED              STATUS                      PORTS                                                                        NAMES
da38007f09ab   dockercompose_nginx   "/usr/local/nginx/sb…"   About a minute ago   Up About a minute           0.0.0.0:666->80/tcp, :::666->80/tcp, 0.0.0.0:667->443/tcp, :::667->443/tcp   dockercompose_nginx_1
#可以看到,这个端口信息就是我们在yml文件中设置的端口信息,直接在这个生效了

docker images

REPOSITORY                TAG       IMAGE ID       CREATED         SIZE
dockercompose_nginx       latest    b1e4b9dfa72d   3 minutes ago   478MB

访问网址端口,查看该网站页面

curl 192.168.75.51:666
hello
#显示结果
cat ./wwwroot/index.html
hello

推荐学习:《docker视频教程

Atas ialah kandungan terperinci Asas Docker menyusun struktur fail dan alat pemasangan (contoh terperinci). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam