阿里云容器化部署django项目

1. 已经在/root/djanog-container创建了demo1这个django项目并成功运行

2.在/root/django-container下创建Dockerfile文件,内容如下
------------------
FROM ubuntu:16.04
MAINTAINER CXF <[email protected]>

RUN apt-get update
RUN apt-get install python3 python3-pip -y
RUN pip3 install django==2.0.0

#demo1是项目root目录,这个目录下有个同名的子目录demo1,这是django项目的特殊设置
ADD demo1 /yettie/spider-monitor/
WORKDIR /yettie/spider-monitor/
EXPOSE 8000

CMD ["python3", "manage.py", "runserver", "0.0.0.0:8000"]
------------------

3. 构建镜像
docker build . -t wy/spider-monitor:0.1

4. 启动镜像,将容器的端口跟宿主机的端口做关联 
docker run -d --rm -p 8000:8000 wy/spider-monitor:0.1 

5. 如果出错,以交互模式启动进入容器进行各种调试
docker run --rm -it wy/spider-monitor:0.1  /bin/bash

6. 访问一个正在运行的容器进行交互操作
docker exec -it containerID /bin/bash


7.阿里云容器集群:在阿里云创建一个swarm容器集群,2个节点,按量付费,一核2g
登录密码:weA123


8.阿里云容器集群:
    创建应用: spider-monitor:0.1 --> 使用镜像创建。

    需要先创建用户镜像:镜像与方案-->镜像-->美西1-->新建镜像-->创建镜像仓库-->美西1-->仓库名yettie-test-rep-->本地仓库(通过命令行推送镜像到镜像仓库)

    镜像仓库名  registry.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep    

    镜像名称:yettie-test-rep
    镜像性质:私有
    公网地址:docker pull registry.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep
    经典内网:docker pull registry-internal.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep
    VPC网络:docker pull registry-vpc.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep
    代码仓库:无
    镜像地域:美国西部 1 (硅谷)

9. 把镜像推送到容器
    9.1 在本地执行 docker images,出现如下信息
        REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
        wy/spider-monitor   0.1                 79957c7a0291        About an hour ago   477MB
    9.2 登录阿里云repository
        docker login --username=asb registry.us-west-1.aliyuncs.com
        密码 weA123
    9.3 打一个新的tag
        #docker tag 79957c7a0291 registry-vpc.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep:spider-monitor-0.1
        docker tag 79957c7a0291 registry.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep:spider-monitor-0.1
    9.4 将镜像push到repository
        #docker push registry-vpc.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep:spider-monitor-0.1
        docker push registry.us-west-1.aliyuncs.com/tanzhi-registry/yettie-test-rep:spider-monitor-0.1

10. 创建应用
    有两个ecs,因此要创建两个容器应用。这样每个ecs都有一个。网络类型选择host。一路按照提示走下来,能看到创建的两个。创建的时候,要注意,讲宿主机的8000端口
跟容器暴露出来的端口做关联。成功后,在公网访问两个主机的公网ip:8000,能看到web页面显示不同的容器ip地址。注意,安全组要放开8000端口。
    负载均衡47.254.50.119,选择http协议,前端后端都是8000,访问47.254.50.119轮流出现容器应用ip地址。如果前端80后端8000,也是可以的,也可能看到两个ip地址。
    
    

猜你喜欢

转载自blog.csdn.net/u011539200/article/details/81092586