×ðÁú¿­Ê±¹ÙÍøµÇ¼

ÔõÑùÔÚLinuxÉÏʹÓÃÈÝÆ÷»¯ÊÖÒÕ°²ÅÅÓ¦ÓÃ

ÔõÑùÔÚlinuxÉÏʹÓÃÈÝÆ÷»¯ÊÖÒÕ°²ÅÅÓ¦ÓÃ

СÐò£º

ÔÚµ±½ñ»¥ÁªÍøʱ´ú£¬Ó¦Óÿª·¢ºÍ°²ÅŵÄËÙÂÊÊÇÆóÒµÀֳɵÄÒªº¦¡£ÎªÁ˼ÓËÙ¿ª·¢ºÍ°²ÅŵÄËÙÂÊ£¬ÈÝÆ÷»¯ÊÖÒÕÓ¦Ô˶øÉú¡£ÈÝÆ÷»¯ÊÖÒÕ¿ÉÒÔ½«Ó¦ÓóÌÐò¼°ÆäÒÀÀµ´ò°üΪһ¸ö×ÔÁ¦µÄ¡¢¿ÉÒÆÖ²µÄÈÝÆ÷£¬Ê¹Æä¿ÉÒÔÔÚÈκÎƽ̨ÉÏÔËÐУ¬ïÔÌ­ÁËÇéÐÎÉèÖõÄÖØ´óÐÔ¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃǽ«ÏÈÈÝÔõÑùÔÚLinuxÉÏʹÓÃÈÝÆ÷»¯ÊÖÒÕÀ´°²ÅÅÓ¦Óã¬ÒÔ±ã¿ìËÙ¡¢¸ßЧµØÖª×ãÆóÒµµÄÐèÇó¡£

Ò»¡¢Ê²Ã´ÊÇÈÝÆ÷»¯ÊÖÒÕ£¿

ÈÝÆ÷»¯ÊÖÒÕÊÇÒ»ÖÖ½«Ó¦ÓóÌÐò¼°ÆäÒÀÀµ×ÊÔ´×ÔÁ¦·â×°µÄÊÖÒÕ¡£ÈÝÆ÷¿ÉÒÔÏñÒ»¸öÐéÄâ»úÒ»ÑùÔËÐÐÔÚÎïÀí»ú»òÕßÐéÄâ»úÉÏ£¬¿ÉÊÇÓëÐéÄâ»ú²î±ðµÄÊÇ£¬ÈÝÆ÷ÓëËÞÖ÷»ú¹²Ïí²Ù×÷ϵͳÄںˣ¬Òò´ËÔ½·¢ÇáÁ¿¼¶¡¢Æô¶¯ËÙÂʸü¿ì¡£

¶þ¡¢Docker: ×îÊܽӴýµÄÈÝÆ÷»¯Æ½Ì¨

Docker ÊÇÏÖÔÚ×îÊܽӴýµÄÈÝÆ÷»¯Æ½Ì¨Ö®Ò»£¬¾ßÓÐÆÕ±éµÄÖ§³ÖºÍÇ¿Ê¢µÄÉçÇøÉú̬ϵͳ¡£ÒÔÏÂÊÇÔõÑùÔÚLinuxÉÏʹÓÃDocker¾ÙÐÐÓ¦Óð²Åŵİ취£º

×°ÖÃDocker

Ê×ÏÈ£¬ÎÒÃÇÐèҪװÖÃDocker¡£ÔÚLinux ÉÏ£¬¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁîÀ´×°ÖÃDocker£º

sudo apt-get update
sudo apt-get install docker-ce

µÇ¼ºó¸´ÖÆ

½¨ÉèDockerfile

Dockerfile ÊÇÓÃÀ´½ç˵Docker ¾µÏñµÄ¹¹½¨Àú³ÌµÄÎļþ¡£¿ÉÒÔʹÓÃí§ÒâÎı¾±à¼­Æ÷½¨ÉèÒ»¸öDockerfile£¬Ê¾ÀýÈçÏ£º

# ʹÓûù´¡¾µÏñ
FROM ubuntu:18.04

# ÉèÖÃ×÷ÕßÐÅÏ¢
MAINTAINER John Doe <john.doe@example.com>

# ×°ÖÃÓ¦ÓÃËùÐèµÄÒÀÀµ
RUN apt-get update && apt-get install -y 
    python 
    python-pip

# ¸´ÖÆÓ¦ÓÃÎļþµ½¾µÏñÖÐ
COPY app.py /app

# ̻¶ӦÓÃÔËÐеĶ˿Ú
EXPOSE 5000

# ÉèÖÃÆô¶¯Ê±µÄĬÈÏÏÂÁî
CMD ["python", "/app/app.py"]

µÇ¼ºó¸´ÖÆ

¹¹½¨Docker¾µÏñ

ÔÚDockerfileËùÔÚµÄĿ¼Ï£¬ÔËÐÐÒÔÏÂÏÂÁîÀ´¹¹½¨Docker ¾µÏñ£º

docker build -t my-app .

µÇ¼ºó¸´ÖÆ

ÔËÐÐDockerÈÝÆ÷

¹¹½¨Àֳɺ󣬿ÉÒÔͨ¹ýÒÔÏÂÏÂÁîÀ´ÔËÐÐDockerÈÝÆ÷£º

docker run -d -p 5000:5000 my-app

µÇ¼ºó¸´ÖÆ

ÒÔÉÏÏÂÁîÖУ¬-d ²ÎÊýÌåÏÖÒÔºǫ́·½·¨ÔËÐÐÈÝÆ÷£¬-p ²ÎÊýÓÃÀ´Ö¸¶¨ËÞÖ÷»ú¶Ë¿ÚºÍÈÝÆ÷¶Ë¿ÚµÄÓ³Éä¹Øϵ£¬my-app ÊÇËùʹÓõÄDocker¾µÏñµÄÃû³Æ¡£

»á¼ûÓ¦ÓÃ

Ó¦ÓÃÏÖÔÚÒѾ­ÔËÐÐÔÚDockerÈÝÆ÷ÖС£¿ÉÒÔͨ¹ýä¯ÀÀÆ÷»á¼û http://localhost:5000 À´Éó²éÓ¦ÓõĽçÃæ¡£

Èý¡¢Kubernetes: ÂþÑÜʽÈÝÆ÷»¯ÖÎÀíƽ̨

Kubernetes ÊÇÒ»¸öÓÃÓÚÖÎÀíÈÝÆ÷»¯Ó¦ÓõĿªÔ´Æ½Ì¨¡£Ëü¿ÉÒÔ×ÊÖúÎÒÃǸüºÃµØÖÎÀíºÍ±àÅÅÈÝÆ÷£¬Ìṩ¸ß¿ÉÓÃÐԺ͵¯ÐÔÉìËõµÄÄÜÁ¦¡£ÒÔÏÂÊÇÔõÑùÔÚLinuxÉÏʹÓÃKubernetes ¾ÙÐÐÓ¦Óð²Åŵİ취£º

×°ÖÃKubernetes

Ê×ÏÈ£¬ÎÒÃÇÐèҪװÖÃKubernetes¡£¿ÉÒÔƾ֤²î±ðµÄLinux¿¯ÐаæÀ´Ñ¡ÔñºÏÊʵÄ×°Ö÷½·¨£¬Ïêϸ¿ÉÒԲο¼Kubernetes ¹Ù·½Îĵµ¡£ÔÚ×°ÖÃÍê³Éºó£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´¼ì²éKubernetesÊÇ·ñÀÖ³É×°Öãº

kubectl version

µÇ¼ºó¸´ÖÆ

½¨ÉèDeployment

ÔÚKubernetesÖУ¬¿ÉÒÔʹÓÃDeploymentÀ´½ç˵ӦÓõݲÅÅ·½·¨¡£¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁÉèÒ»¸öDeployment ¹¤¾ß£º

kubectl create deployment my-app --image=my-app:latest

µÇ¼ºó¸´ÖÆ

̻¶Service

½¨ÉèDeploymentºó£¬»¹ÐèÒª½¨ÉèÒ»¸öService À´Ì»Â¶Ó¦ÓõĻá¼û¶Ë¿Ú¡£¿ÉÒÔʹÓÃÒÔÏÂÏÂÁÉèService ¹¤¾ß£º

kubectl expose deployment my-app --port=80 --target-port=5000

µÇ¼ºó¸´ÖÆ

»á¼ûÓ¦ÓÃ

ÏÖÔÚ£¬Ó¦ÓÃÒѾ­Àֳɰ²ÅÅÔÚKubernetes ¼¯ÈºÖС£¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´»ñÈ¡Service µÄIP µØµã£º

kubectl get services

µÇ¼ºó¸´ÖÆ

ͨ¹ýä¯ÀÀÆ÷»á¼û http:// :80£¬¼´¿ÉÉó²éÓ¦ÓõĽçÃæ¡£

½áÂÛ£º

ÈÝÆ÷»¯ÊÖÒÕΪÆóÒµµÄÓ¦Óÿª·¢Óë°²ÅÅ´øÀ´ÁËÖØ´óµÄ±ãµ±¡£±¾ÎÄÏÈÈÝÁËÔÚLinuxÉÏʹÓÃDocker ºÍKubernetes ¾ÙÐÐÓ¦Óð²ÅŵÄÒªÁ죬²¢¸ø³öÁËÏà¹Ø´úÂëʾÀý¡£Ï£Íû¶ÁÕßͨ¹ý±¾ÎĵÄÖ¸µ¼£¬Äܹ»Ô½·¢¿ìËÙ¡¢¸ßЧµØ°²ÅÅÓ¦Óã¬ÌáÉýÉú²úÁ¦¡£

²Î¿¼Á´½Ó£º

Docker¹Ù·½Îĵµ£ºhttps://docs.docker.com/

Kubernetes¹Ù·½Îĵµ£ºhttps://kubernetes.io/

ÒÔÉϾÍÊÇÔõÑùÔÚLinuxÉÏʹÓÃÈÝÆ÷»¯ÊÖÒÕ°²ÅÅÓ¦ÓõÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡

ÃâÔð˵Ã÷£ºÒÔÉÏչʾÄÚÈÝȪԴÓÚÏàÖúýÌå¡¢ÆóÒµ»ú¹¹¡¢ÍøÓÑÌṩ»òÍøÂçÍøÂçÕûÀí£¬°æȨÕùÒéÓë±¾Õ¾Î޹أ¬ÎÄÕÂÉæ¼°¿´·¨Óë¿´·¨²»´ú±í×ðÁú¿­Ê±¹ÙÍøµÇ¼ÂËÓÍ»úÍø¹Ù·½Ì¬¶È£¬Çë¶ÁÕß½ö×ö²Î¿¼¡£±¾ÎĽӴýתÔØ£¬×ªÔØÇë˵Ã÷À´ÓÉ¡£ÈôÄúÒÔΪ±¾ÎÄÇÖÕ¼ÁËÄúµÄ°æȨÐÅÏ¢£¬»òÄú·¢Ã÷¸ÃÄÚÈÝÓÐÈκÎÉæ¼°ÓÐÎ¥¹«µÂ¡¢Ã°·¸Ö´·¨µÈÎ¥·¨ÐÅÏ¢£¬ÇëÄúÁ¬Ã¦ÁªÏµ×ðÁú¿­Ê±¹ÙÍøµÇ¼ʵʱÐÞÕý»òɾ³ý¡£

Ïà¹ØÐÂÎÅ

ÁªÏµ×ðÁú¿­Ê±¹ÙÍøµÇ¼

18523999891

¿É΢ÐÅÔÚÏß×Éѯ

ÊÂÇéʱ¼ä£ºÖÜÒ»ÖÁÖÜÎ壬9:30-18:30£¬½ÚãåÈÕÐÝÏ¢

QR code
ÍøÕ¾µØͼ