{"id":49257,"date":"2023-05-24T18:51:36","date_gmt":"2023-12-13T04:49:02","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/"},"modified":"2024-04-30T05:49:04","modified_gmt":"2024-04-29T21:49:04","slug":"%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/","title":{"rendered":"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9"},"content":{"rendered":"<p>\u4f60\u597d\u3002<br \/>\n\u6211\u662fClass Act\u57fa\u7840\u8bbe\u65bd\u4e8b\u4e1a\u90e8\u7684\u5927\u585a\u5148\u751f\u3002<\/p>\n<p>\u6211\u6253\u7b97\u521b\u5efaDjango\u7684\u5bb9\u5668\u6620\u50cf\uff0c\u5e76\u5728docker\u4e0a\u8fd0\u884c\u5b83\u3002\u53e6\u5916\uff0c\u6211\u8fd8\u60f3\u5c06\u8be5\u6620\u50cf\u63a8\u9001\u5230Harbor\u4e0a\u3002\u7136\u540e\uff0c\u5728\u63a5\u4e0b\u6765\u7684\u51e0\u6b21\u4e2d\uff0c\u6211\u5c06\u4f7f\u7528\u8fd9\u4e2a\u521b\u5efa\u7684Django\u5bb9\u5668\u6620\u50cf\u4f5c\u4e3apod\u90e8\u7f72\u5230Kubernetes\u73af\u5883\u4e2d\u3002<br \/>\n\u7531\u4e8e\u672c\u6b21\u53ea\u662f\u51c6\u5907\u9636\u6bb5\uff0c\u6211\u5c06\u7b80\u7565\u5730\u8bb0\u5f55\u4e0b\u6765\u3002<\/p>\n<h1>\u5efa\u7acb\u5f62\u8c61<\/h1>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/3-0.png\" alt=\"k8s_3-\u30da\u30fc\u30b814.drawio.png\" \/><\/div>\n<h1>\u5728Harbor\u4e0a\u51c6\u5907\u4e00\u4e2a\u4e13\u7528\u9879\u76ee\u3002<\/h1>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/5-0.png\" alt=\"2023071201.png\" \/><\/div>\n<h1>\u521b\u5efa\u57fa\u4e8eDjango\u7684\u5bb9\u5668\u955c\u50cf<\/h1>\n<p>\u57fa\u672c\u4e0a\uff0c\u6211\u5c07\u4ee5\u6211\u4e4b\u524d\u5275\u5efa\u7684\u4ee5\u4e0b\u5167\u5bb9\u4f5c\u70ba\u57fa\u790e\u3002<\/p>\n<p>&nbsp;<\/p>\n<p>\u9009\u62e9\u4e86\u57fa\u4e8eUbuntu 22.04\u7684\u5bb9\u5668\u6620\u50cf\u4f5c\u4e3a\u57fa\u7840\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker images\r\nREPOSITORY                             TAG       IMAGE ID       CREATED       SIZE\r\nubuntu                                 latest    5a81c4b8502e   10 days ago   77.8MB\r\n\r\nroot@k8s-master:~\/yaml\/ins-env# docker run -itd --name django ubuntu:latest\r\n2df08d54e76e569363db2374d83bf079ba6d1f264a9cbc6aa0c4bd8670c3fb4f\r\nroot@k8s-master:~\/yaml\/ins-env# docker ps\r\nCONTAINER ID   IMAGE           COMMAND       CREATED         STATUS         PORTS     NAMES\r\n2df08d54e76e   ubuntu:latest   \"\/bin\/bash\"   3 seconds ago   Up 2 seconds             django\r\nroot@k8s-master:~\/yaml\/ins-env# docker exec -it django \/bin\/bash\r\nroot@2df08d54e76e:\/# uname -a\r\nLinux 2df08d54e76e 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU\/Linux\r\nroot@2df08d54e76e:\/# cat \/etc\/os-release\r\nPRETTY_NAME=\"Ubuntu 22.04.2 LTS\"\r\nNAME=\"Ubuntu\"\r\nVERSION_ID=\"22.04\"\r\nVERSION=\"22.04.2 LTS (Jammy Jellyfish)\"\r\nVERSION_CODENAME=jammy\r\nID=ubuntu\r\nID_LIKE=debian\r\nHOME_URL=\"https:\/\/www.ubuntu.com\/\"\r\nSUPPORT_URL=\"https:\/\/help.ubuntu.com\/\"\r\nBUG_REPORT_URL=\"https:\/\/bugs.launchpad.net\/ubuntu\/\"\r\nPRIVACY_POLICY_URL=\"https:\/\/www.ubuntu.com\/legal\/terms-and-policies\/privacy-policy\"\r\nUBUNTU_CODENAME=jammy\r\n<\/code><\/pre>\n<p>\u5728\u5bb9\u5668\u5185\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u3002<\/p>\n<pre class=\"post-pre\"><code>apt update\r\napt upgrade\r\napt install -y python3-pip vim \r\npip --version\r\napt install -y software-properties-common\r\nadd-apt-repository ppa:deadsnakes\/ppa\r\napt update\r\napt list python3.*\r\napt install -y python3.12 python3.12-venv\r\npip install django\r\n<\/code><\/pre>\n<p>\u4ece\u5bb9\u5668\u4e2d\u6ce8\u9500\u5e76\u521b\u5efa\u4e00\u4e2a\u6620\u50cf\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker commit django django-image\r\nsha256:bc37f587743f23a4e350879c4a2cca5631f97b4ee8d6859e9178e4a1e59b3e07\r\nroot@k8s-master:~\/yaml\/ins-env# docker images\r\nREPOSITORY                             TAG       IMAGE ID       CREATED         SIZE\r\ndjango-image                           latest    bc37f587743f   6 seconds ago   639MB\r\nubuntu                                 latest    5a81c4b8502e   10 days ago     77.8MB\r\n<\/code><\/pre>\n<p>\u6211\u4f1a\u8fdb\u884c\u6807\u7b7e\u6253\u4e0a\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker tag django-image 192.168.2.37:30003\/ins-env\/django:1.0\r\nroot@k8s-master:~\/yaml\/ins-env# docker images\r\nREPOSITORY                             TAG       IMAGE ID       CREATED         SIZE\r\n192.168.2.37:30003\/ins-env\/django      1.0       bc37f587743f   4 minutes ago   639MB\r\ndjango-image                           latest    bc37f587743f   4 minutes ago   639MB\r\n192.168.2.37:30003\/k8s-images\/ubuntu   1.0       5a81c4b8502e   10 days ago     77.8MB\r\nubuntu                                 latest    5a81c4b8502e   10 days ago     77.8MB\r\n<\/code><\/pre>\n<p>\u6211\u4f1a\u5728Harbor\u767b\u5f55\u540e\u8fdb\u884c\u63a8\u9001\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker login 192.168.2.37:30003\r\nAuthenticating with existing credentials...\r\nWARNING! Your password will be stored unencrypted in \/root\/.docker\/config.json.\r\nConfigure a credential helper to remove this warning. See\r\nhttps:\/\/docs.docker.com\/engine\/reference\/commandline\/login\/#credentials-store\r\nLogin Succeeded\r\nroot@k8s-master:~\/yaml\/ins-env# docker push 192.168.2.37:30003\/ins-env\/django:1.0\r\nThe push refers to repository [192.168.2.37:30003\/ins-env\/django]\r\n8a75255d3619: Pushed\r\n59c56aee1fb4: Pushed\r\n1.0: digest: sha256:44c98246ef58d3c14ef807d379774c976ea52bddce4e721bbb6bda6fad038e80 size: 742\r\n<\/code><\/pre>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/19-0.png\" alt=\"2023071202.png\" \/><\/div>\n<h1>\u5728Django\u5bb9\u5668\u4e2d\u521b\u5efa\u5e76\u8fd0\u884c\u9879\u76ee\u3002<\/h1>\n<p>\u6211\u4eec\u5c06\u57fa\u4e8e\u4e4b\u524d\u521b\u5efa\u7684Django\u955c\u50cf:1.0\u518d\u6b21\u90e8\u7f72Django\u5bb9\u5668\u3002\u4e3a\u4e86\u5728Django\u8fd0\u884c\u65f6\u6253\u5f008000\u7aef\u53e3\u4ee5\u8fdb\u884c\u8bbf\u95ee\uff0c\u9700\u8981\u7559\u610f\u5728\u5bb9\u5668\u8fd0\u884c\u65f6\u6267\u884c\u7684\u547d\u4ee4\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker ps -a\r\nCONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES\r\nroot@k8s-master:~\/yaml\/ins-env# docker images\r\nREPOSITORY                             TAG       IMAGE ID       CREATED          SIZE\r\n192.168.2.37:30003\/ins-env\/django      1.0       bc37f587743f   30 minutes ago   639MB\r\ndjango-image                           latest    bc37f587743f   30 minutes ago   639MB\r\nubuntu                                 latest    5a81c4b8502e   10 days ago      77.8MB\r\n192.168.2.37:30003\/k8s-images\/ubuntu   1.0       5a81c4b8502e   10 days ago      77.8MB\r\nroot@k8s-master:~\/yaml\/ins-env# docker run -itd --name django -p 8000:8000 192.168.2.37:30003\/ins-env\/django:1.0\r\n5db09c0dd3d967758acb11991752413a0c27465c0ef1476a8045d272418f90ad\r\nroot@k8s-master:~\/yaml\/ins-env# docker ps\r\nCONTAINER ID   IMAGE                                   COMMAND       CREATED         STATUS         PORTS                                       NAMES\r\n5db09c0dd3d9   192.168.2.37:30003\/ins-env\/django:1.0   \"\/bin\/bash\"   5 seconds ago   Up 4 seconds   0.0.0.0:8000-&gt;8000\/tcp, :::8000-&gt;8000\/tcp   django\r\n<\/code><\/pre>\n<p>\u6682\u65f6\u968f\u610f\u5730\u8fd0\u884c\u9879\u76ee\uff0c\u4e3a\u4e86\u5141\u8bb8\u6240\u6709IP\u5730\u5740\u7684\u8bbf\u95ee\uff0c\u8fd8\u9700\u8981\u4fee\u6539settings.py\u6587\u4ef6\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker exec -it django \/bin\/bash\r\nroot@5db09c0dd3d9:\/# cd \/home\r\nroot@5db09c0dd3d9:\/home# django-admin startproject testProject\r\nroot@5db09c0dd3d9:\/home# cd testProject\/\r\nroot@5db09c0dd3d9:\/home\/testProject# python3 manage.py startapp testApplication\r\nroot@5db09c0dd3d9:\/home\/testProject# ls\r\nmanage.py  testApplication  testProject\r\nroot@5db09c0dd3d9:\/home\/testProject# cd testProject\r\nroot@5db09c0dd3d9:\/home\/testProject\/testProject# ls -ltr\r\ntotal 20\r\n-rw-r--r-- 1 root root  399 Jul  9 16:18 wsgi.py\r\n-rw-r--r-- 1 root root  767 Jul  9 16:18 urls.py\r\n-rw-r--r-- 1 root root 3236 Jul  9 16:18 settings.py\r\n-rw-r--r-- 1 root root  399 Jul  9 16:18 asgi.py\r\n-rw-r--r-- 1 root root    0 Jul  9 16:18 __init__.py\r\ndrwxr-xr-x 2 root root 4096 Jul  9 16:20 __pycache__\r\nroot@5db09c0dd3d9:\/home\/testProject\/testProject# vi settings.py\r\nroot@5db09c0dd3d9:\/home\/testProject\/testProject# cp -p settings.py settings.py.org\r\nroot@5db09c0dd3d9:\/home\/testProject\/testProject# vi settings.py\r\nroot@5db09c0dd3d9:\/home\/testProject\/testProject# diff settings.py settings.py.org\r\n28c28\r\n&lt; ALLOWED_HOSTS = [\"*\"]\r\n---\r\n&gt; ALLOWED_HOSTS = []\r\nroot@5db09c0dd3d9:\/home\/testProject\/testProject# cd ..\r\nroot@5db09c0dd3d9:\/home\/testProject# python3 manage.py runserver 0.0.0.0:8000\r\nWatching for file changes with StatReloader\r\nPerforming system checks...\r\nSystem check identified no issues (0 silenced).\r\nYou have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.\r\nRun 'python manage.py migrate' to apply them.\r\nJuly 09, 2023 - 07:22:01\r\nDjango version 4.2.3, using settings 'testProject.settings'\r\nStarting development server at http:\/\/0.0.0.0:8000\/\r\nQuit the server with CONTROL-C.\r\n<\/code><\/pre>\n<p>\u4f7f\u7528Web\u6d4f\u89c8\u5668\u8bbf\u95ee\u8fd0\u884cDocker\u7684\u670d\u52a1\u5668\u7684IP\u5730\u5740:8000\u3002\u770b\u8d77\u6765\u6ca1\u6709\u95ee\u9898\uff0c\u8f93\u51fa\u4e86Django\u7684\u9ed8\u8ba4\u9875\u9762\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/26-0.png\" alt=\"2023071203.png\" \/><\/div>\n<p>\u5c06\u6b64\u4e0a\u4f20\u5230Harbor\u4f5c\u4e3aDjango\u6620\u50cf\uff1a1.1\u3002<\/p>\n<pre class=\"post-pre\"><code>root@k8s-master:~\/yaml\/ins-env# docker commit django django\r\nsha256:af76143a23d157a2b8601cc58f238a475118251bb2b5f219a01207447e235b2d\r\nroot@k8s-master:~\/yaml\/ins-env# docker images\r\nREPOSITORY                             TAG       IMAGE ID       CREATED          SIZE\r\ndjango                                 latest    af76143a23d1   8 seconds ago    678MB\r\n192.168.2.37:30003\/ins-env\/django      1.0       bc37f587743f   48 minutes ago   639MB\r\ndjango-image                           latest    bc37f587743f   48 minutes ago   639MB\r\nubuntu                                 latest    5a81c4b8502e   10 days ago      77.8MB\r\nroot@k8s-master:~\/yaml\/ins-env# docker tag django 192.168.2.37:30003\/ins-env\/django:1.1\r\nroot@k8s-master:~\/yaml\/ins-env# docker images\r\nREPOSITORY                             TAG       IMAGE ID       CREATED              SIZE\r\n192.168.2.37:30003\/ins-env\/django      1.1       af76143a23d1   About a minute ago   678MB\r\ndjango                                 latest    af76143a23d1   About a minute ago   678MB\r\n192.168.2.37:30003\/ins-env\/django      1.0       bc37f587743f   49 minutes ago       639MB\r\ndjango-image                           latest    bc37f587743f   49 minutes ago       639MB\r\nubuntu                                 latest    5a81c4b8502e   10 days ago          77.8MB\r\n192.168.2.37:30003\/k8s-images\/ubuntu   1.0       5a81c4b8502e   10 days ago          77.8MB\r\nroot@k8s-master:~\/yaml\/ins-env# docker push 192.168.2.37:30003\/ins-env\/django:1.1\r\nThe push refers to repository [192.168.2.37:30003\/ins-env\/django]\r\nf036152a0332: Pushed\r\n8a75255d3619: Layer already exists\r\n59c56aee1fb4: Layer already exists\r\n1.1: digest: sha256:3aa7bc46c2c77e97d803f0a90060c73ffaed6ef04b602665bc40288e1135ca79 size: 954\r\n<\/code><\/pre>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/29-0.png\" alt=\"2023071204.png\" \/><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u4f60\u597d\u3002 \u6211\u662fClass Act\u57fa\u7840\u8bbe\u65bd\u4e8b\u4e1a\u90e8\u7684\u5927\u585a\u5148\u751f\u3002 \u6211\u6253\u7b97\u521b\u5efaDjango\u7684\u5bb9\u5668\u6620\u50cf\uff0c\u5e76\u5728docker\u4e0a [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-49257","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9 - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u521b\u5efadjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9\u3002\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9\" \/>\n<meta property=\"og:description\" content=\"\u4f60\u597d\u3002 \u6211\u662fClass Act\u57fa\u7840\u8bbe\u65bd\u4e8b\u4e1a\u90e8\u7684\u5927\u585a\u5148\u751f\u3002 \u6211\u6253\u7b97\u521b\u5efaDjango\u7684\u5bb9\u5668\u6620\u50cf\uff0c\u5e76\u5728docker\u4e0a [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u521b\u5efadjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9\u3002\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-12-13T04:49:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-29T21:49:04+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/3-0.png\" \/>\n<meta name=\"author\" content=\"\u79d1, \u96c5\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u79d1, \u96c5\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/\",\"name\":\"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-12-13T04:49:02+00:00\",\"dateModified\":\"2024-04-29T21:49:04+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a\",\"name\":\"\u79d1, \u96c5\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g\",\"caption\":\"\u79d1, \u96c5\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/keya\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9 - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u521b\u5efadjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9\u3002\/","og_locale":"zh_CN","og_type":"article","og_title":"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9","og_description":"\u4f60\u597d\u3002 \u6211\u662fClass Act\u57fa\u7840\u8bbe\u65bd\u4e8b\u4e1a\u90e8\u7684\u5927\u585a\u5148\u751f\u3002 \u6211\u6253\u7b97\u521b\u5efaDjango\u7684\u5bb9\u5668\u6620\u50cf\uff0c\u5e76\u5728docker\u4e0a [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u521b\u5efadjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9\u3002\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-12-13T04:49:02+00:00","article_modified_time":"2024-04-29T21:49:04+00:00","og_image":[{"url":"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8a36913a08637a6c8da2\/3-0.png"}],"author":"\u79d1, \u96c5","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u79d1, \u96c5","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"5 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/","name":"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-12-13T04:49:02+00:00","dateModified":"2024-04-29T21:49:04+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u521b\u5efaDjango\u5bb9\u5668\uff0c\u5e76\u8bbf\u95ee\u9ed8\u8ba4\u7684\u7f51\u7ad9"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a","name":"\u79d1, \u96c5","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g","caption":"\u79d1, \u96c5"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/keya\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%88%9b%e5%bb%badjango%e5%ae%b9%e5%99%a8%ef%bc%8c%e5%b9%b6%e8%ae%bf%e9%97%ae%e9%bb%98%e8%ae%a4%e7%9a%84%e7%bd%91%e7%ab%99%e3%80%82\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49257","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=49257"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49257\/revisions"}],"predecessor-version":[{"id":90075,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49257\/revisions\/90075"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=49257"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=49257"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=49257"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}