跳转至

容器安装

如何让容器开机自启

# 创建时加上 --restart=always
sudo docker run --restart=always .....
# 如果创建时未指定 --restart=always ,可通过update 命令设置
docker update --restart=always xxx 

如何让容器自动更新

#自动清除旧镜像,每天凌晨 2 点检查一次更新
docker run -d --restart=always \
    --name watchtower \
    --restart unless-stopped \
    -v /var/run/docker.sock:/var/run/docker.sock \
    containrrr/watchtower -c \
    --schedule "0 0 2 * * *"

nginx

Windows下安装,Linux也类似

1.下载最新的nginx

docker pull nginx:latest

2.运行容器

docker run --name nginx-test -p 50001:80 -d nginx

参数说明: --name nginx-test:容器名称。 -p 50001:80: 端口进行映射,将本地 50001 端口映射到容器内部的 80 端口。 -d nginx: 设置容器在在后台一直运行。

3.再本机上创建容器内对应的目录,并启动

# 进入容器
docker exec -it nginx-test /bin/bash

# 拷贝容器内的信息到本地
docker cp nginx-test:/etc/nginx/conf.d/default.conf E:\Download\DockerContainer\nginx\conf.d/
docker cp nginx-test:/usr/share/nginx/html/index.html E:\Download\DockerContainer\nginx\www
docker cp nginx-test:/etc/nginx/nginx.conf E:\Download\DockerContainer\nginx\conf

# 删除旧的容器并重新创建
docker stop nginx-test
docker rm nginx-test
docker run --name nginx-test -p 50001:80 -v E:\Download\DockerContainer\nginx\conf:/etc/nginx/conf -v E:\Download\DockerContainer\nginx\conf.d:/etc/nginx/conf.d -v E:\Download\DockerContainer\nginx\logs:/var/log/nginx -v E:\Download\DockerContainer\nginx\www:/usr/share/nginx/html -d nginx

Gitblit

# 8080: HTTP | 8443: HTTPS | 9418: Git protocol | 29418: SSH
# https://hub.docker.com/r/gitblit/gitblit
docker run -d --name gitblit  -p 50051:8443 -p 50050:8080 -p 50052:9418 -p 50053:29418 gitblit/gitblit

MariaDB

# https://hub.docker.com/_/mariadb
docker run --name mariadbtest -e MYSQL_ROOT_PASSWORD=mypass -p 50010:3306 -d mariadb:latest --log-bin --binlog-format=MIXED