Tencent clould centos7 run dotent core on docker

Init Server

windows console tool: cmder

ref: digitalocean initial-server-setup-with-centos-7

  1. login as root

    local$ ssh root@SERVER_IP_ADDRESS

  2. add user, called xinlin

    $ add xinlin

  3. assign password

    $ passwd xinlin

  4. give xinlin sudo, By default, on CentOS 7, users who belong to the "wheel" group are allowed to use the sudo command.

    $ gpasswd -a xinlin wheel

  5. generate key

    local$ ssh-keygen

  6. copy public key to server

    $ su - xinlin $ mkdir .ssh $ chmod 700 .ssh

Setup Server

  1. install docker(TODO: install docker-ce)

    yum install docker systemctl start docker systemctl enable docker docker info

    add group docker, and add your_id to docker group

    sudo groupadd docker sudo gpasswd -a [your_id_here] docker

  2. install dotnet image

    docker pull microsoft/dotnet

  3. install git

    yum install git

  4. download source code from git reop

  5. add Dockerfile

  6. build docker image

    docker build -t aspnetapp .

  7. run docker image

    docker run -d -p 5000:5000 --name myapp aspnetapp

    docker command: docker rm [container id] docker rmi [image id]

  8. publish app and run

    dotnet publish -c release -o out dotnet out/[app].dll

  9. nginx

    ref: https://www.sep.com/sep-blog/2017/02/27/nginx-reverse-proxy-to-asp-net-core-separate-docker-containers/

  10. docker-compose docker-compose build docker-compose up -d