{"id":363,"date":"2025-10-02T16:25:25","date_gmt":"2025-10-02T16:25:25","guid":{"rendered":"https:\/\/iotnoob.com\/wordpress\/?p=363"},"modified":"2025-10-06T10:59:33","modified_gmt":"2025-10-06T10:59:33","slug":"docker-how","status":"publish","type":"post","link":"https:\/\/iotnoob.com\/wordpress\/2025\/10\/02\/docker-how\/","title":{"rendered":"Docker &amp; How"},"content":{"rendered":"\n<p>Concept?<\/p>\n\n\n\n<p>\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e14\u0e49\u0e27\u0e22\u0e01\u0e32\u0e23 \u0e15\u0e34\u0e14\u0e15\u0e31\u0e49\u0e07 docker desktop<br><a href=\"https:\/\/www.docker.com\/products\/docker-desktop\">https:\/\/www.docker.com\/products\/docker-desktop<\/a><\/p>\n\n\n\n<p>\u0e08\u0e32\u0e01\u0e19\u0e31\u0e49\u0e19 \u0e2a\u0e23\u0e49\u0e32\u0e07 folder \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a project \u0e02\u0e2d\u0e07\u0e40\u0e23\u0e32\u0e17\u0e35\u0e48\u0e08\u0e30\u0e40\u0e2d\u0e32 server \u0e15\u0e48\u0e32\u0e07\u0e46\u0e21\u0e32\u0e22\u0e33\u0e23\u0e27\u0e21\u0e01\u0e31\u0e19<\/p>\n\n\n\n<p>\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e44\u0e1f\u0e25\u0e4c docker-compose.yml \u0e17\u0e35\u0e48\u0e40\u0e1b\u0e47\u0e19 file \u0e2b\u0e25\u0e31\u0e01\u0e17\u0e35\u0e48\u0e40\u0e01\u0e47\u0e1a\u0e23\u0e27\u0e1a\u0e23\u0e27\u0e21\u0e20\u0e32\u0e1e\u0e23\u0e27\u0e21\u0e02\u0e2d\u0e07 project \u0e02\u0e2d\u0e07\u0e40\u0e23\u0e32<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"729\" height=\"177\" src=\"https:\/\/iotnoob.com\/wordpress\/wp-content\/uploads\/2025\/10\/image.png\" alt=\"\" class=\"wp-image-380\" srcset=\"https:\/\/iotnoob.com\/wordpress\/wp-content\/uploads\/2025\/10\/image.png 729w, https:\/\/iotnoob.com\/wordpress\/wp-content\/uploads\/2025\/10\/image-300x73.png 300w\" sizes=\"auto, (max-width: 729px) 100vw, 729px\" \/><\/figure>\n\n\n\n<p>\u0e15\u0e31\u0e27\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e44\u0e1f\u0e25\u0e4c\u0e17\u0e35\u0e48\u0e23\u0e27\u0e1a\u0e23\u0e27\u0e21\u0e40\u0e2d\u0e32 DB server \u0e2b\u0e25\u0e32\u0e22\u0e46\u0e15\u0e31\u0e27\u0e40\u0e2d\u0e32\u0e44\u0e27\u0e49 \u0e40\u0e1b\u0e23\u0e35\u0e22\u0e1a\u0e40\u0e2b\u0e21\u0e37\u0e2d\u0e19 computer \u0e0b\u0e31\u0e01\u0e40\u0e04\u0e23\u0e37\u0e48\u0e2d\u0e07\u0e17\u0e35\u0e48\u0e25\u0e07 software \u0e40\u0e2b\u0e25\u0e48\u0e32\u0e19\u0e35\u0e49\u0e40\u0e2d\u0e32\u0e44\u0e27\u0e49\u0e41\u0e25\u0e49\u0e27 \u0e17\u0e31\u0e49\u0e07\u0e17\u0e35\u0e48\u0e08\u0e23\u0e34\u0e07\u0e46\u0e41\u0e25\u0e49\u0e27\u0e40\u0e23\u0e32\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e25\u0e07<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">version: '3.8'\n\nservices:\n  mysql:\n    image: mysql:8.0\n    container_name: mysql_db\n    restart: unless-stopped\n    environment:\n      MYSQL_ROOT_PASSWORD: 123456\n      MYSQL_USER: thada\n      MYSQL_PASSWORD: 123456\n      MYSQL_DATABASE: testdb\n    ports:\n      - \"3406:3306\"\n    volumes:\n      - mysql_data:\/var\/lib\/mysql\n\n  postgres:\n    image: postgres:15\n    container_name: postgres_db\n    restart: unless-stopped\n    environment:\n      POSTGRES_PASSWORD: 123456\n      POSTGRES_USER: thada\n      POSTGRES_DB: testdb\n    ports:\n      - \"5433:5432\"\n    volumes:\n      - postgres_data:\/var\/lib\/postgresql\/data\n\n  informix:\n    image: icr.io\/informix\/informix-developer-database:latest\n    container_name: informix_db\n    restart: unless-stopped\n    environment:\n      LICENSE: accept\n      INFORMIX_PASSWORD: 123456\n      INFORMIXSERVER: \"informix_db\"\n      DBSERVERNAME: \"informix_db\"\n      DBSERVERALIASES: \"informix_db\"\n    ports:\n      - \"9088:9088\"\n      - \"9089:9089\"\n    volumes:\n      - informix_data:\/opt\/ibm\/data\n    cap_add:\n      - SYS_RESOURCE\n\n  php:\n    build: .\/php\n    container_name: php_fpm\n    restart: unless-stopped\n    working_dir: \/var\/www\/html\n    volumes:\n      - .\/www:\/var\/www\/html\n    depends_on: # &lt;- \u0e40\u0e1e\u0e34\u0e48\u0e21\u0e40\u0e02\u0e49\u0e32\u0e21\u0e32\n      - mysql\n      - postgres\n      - informix\n\n  webserver:\n    image: nginx:1.25 # &lt;- \u0e41\u0e01\u0e49\u0e44\u0e02\u0e41\u0e25\u0e49\u0e27\n    container_name: nginx_web\n    restart: unless-stopped\n    volumes:\n      - .\/nginx\/default.conf:\/etc\/nginx\/conf.d\/default.conf\n      - .\/www:\/var\/www\/html\n    ports:\n      - \"8000:80\"\n    depends_on: # &lt;- \u0e40\u0e1e\u0e34\u0e48\u0e21\u0e40\u0e02\u0e49\u0e32\u0e21\u0e32\n      - php\n\nvolumes:\n  mysql_data:\n  postgres_data:\n  informix_data:<\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Concept? \u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e14\u0e49\u0e27\u0e22\u0e01\u0e32\u0e23 \u0e15\u0e34\u0e14\u0e15\u0e31\u0e49\u0e07 docker desktophttps:\/\/www.docker.com\/products\/docker-desktop \u0e08\u0e32\u0e01\u0e19\u0e31\u0e49\u0e19 \u0e2a\u0e23\u0e49\u0e32\u0e07 folder \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a project \u0e02\u0e2d\u0e07\u0e40\u0e23\u0e32\u0e17\u0e35\u0e48\u0e08\u0e30\u0e40\u0e2d\u0e32 server \u0e15\u0e48\u0e32\u0e07\u0e46\u0e21\u0e32\u0e22\u0e33\u0e23\u0e27\u0e21\u0e01\u0e31\u0e19 \u0e2a\u0e23\u0e49\u0e32\u0e07\u0e44\u0e1f\u0e25\u0e4c docker-compose.yml&hellip;<\/p>\n","protected":false},"author":1,"featured_media":378,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"class_list":["post-363","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-docker"],"_links":{"self":[{"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/posts\/363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/comments?post=363"}],"version-history":[{"count":4,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/posts\/363\/revisions"}],"predecessor-version":[{"id":383,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/posts\/363\/revisions\/383"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/media\/378"}],"wp:attachment":[{"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/media?parent=363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/categories?post=363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iotnoob.com\/wordpress\/wp-json\/wp\/v2\/tags?post=363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}