docker学习笔记

1.Linux 安装docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun  //脚本自动安装

2.docker容器,镜像,仓库理解

Docker镜像
	1.是容器运⾏时的只读模板,可以是操作系统(windows/linux等), 软件运⾏环境(nginx/redis/rabbitmq等),⽤户程序(java程序等)
	2.可理解为java的classclass User{}
Docker容器
	1.容器包含了某个应⽤运⾏所需要的全部环境,一个镜像可启动多个容器
	2.可理解为java的对象         new User();
Docker仓库
	1.⽤来保存镜像,有公有仓库和私有仓库
	2.可理解为Maven的中央仓库和本地私库
	3.阿里云docker镜像仓库:[https://dev.aliyun.com/search.html]

3.docker常用命令总结

//查看docker版本
docker -v

//启动docker
systemctl start docker

//设置开机自动启动
systemctl enable docker

//搜索指定镜像
docker search nginx

//拉取最新版本镜像
docker pull nginx:latest

//查看所有本地镜像
docker images

//启动容器 docker run --name 指定容器名 -p 本地端口:容器内部端口 -d nginx
docker run --name nginx-test -p 8080:80 -d nginx

//查看正在运行的容器(后面加 -a  可查看启动错误的docker)
docker ps 

//查看docker容器启动日志
docker logs 容器id

//删除所以已停止的容器
docker rm $(docker ps -a -q)

//删除所有镜像(需先删除容器)
docker rmi `docker images -q`

docker-compose 用于定义和运行多容器 Docker 应用程序的工具

//下载相关包
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

//设置为可执行命令
chmod +x /usr/local/bin/docker-compose

//查看版本
docker-compose --version

//后台执行
docker-compose up -d

//停止服务
docker-compose kill

4.nginx配置外部conf,及配置https

//docker启动nginx命令
docker run -d -p 443:443 -p 80:80 --name nginx-dj -v /docker/nginx/www:/usr/share/nginx/html -v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /docker/nginx/logs:/var/log/nginx -v /docker/nginx/conf/conf.crt:/etc/nginx/conf.crt  nginx

//解读
docker run -d -p 443:443 -p 80:80 //启动命令,映射443,80 端口
--name nginx-dj  	//指定容器名字
-v /docker/nginx/www:/usr/share/nginx/html  //指定web页面   -v 自定义的页面:docker容器nginx页面(写死/usr/share/nginx/html)
-v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf	//指定配置文件   -v 自定义的配置文件:docker容器nginx配置文件(写死/etc/nginx/nginx.conf)
-v /docker/nginx/logs:/var/log/nginx  //指定日志文件  -v 自定义的日志文件路径:docker容器nginx日志文件路径(写死/var/log/nginx)
-v /docker/nginx/conf/conf.crt:/etc/nginx/conf.crt  //指定https crt文件路径  -v 自定义的文件路径:docker容器nginx文件路径(nginx.conf里指定相对路径 例 conf.crt/xxxxx.crt)

//文件树
`--docker
	|-- nginx
	    |-- conf
	    |   |-- conf.crt
	    |   |   |-- 1_www.ssaks.com_bundle.crt
	    |   |   `-- 2_www.ssaks.com.key
	    |   `-- nginx.conf
	    |-- conf.d
	    |-- conf.rt
	    |-- logs
	    |   |-- access.log
	    |   `-- error.log
	    `-- www

5.nginx 配置文件

http {
    include       mime.types;
    default_type  application/octet-stream;
    server {
        listen       80;
        server_name  www.sszka.cn;
	rewrite ^(.*) https://$server_name$1 permanent;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    server {
        listen       443 ssl;
        server_name  www.sszka.cn;
		proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        ssl_certificate      conf.crt/1_www.aszka.com_bundle.crt;
        ssl_certificate_key  conf.crt/2_www.aszka.com.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;
        location / {
		    proxy_pass http://www.aszka.com:8080;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header X-Forwarded-Proto $scheme;
			proxy_set_header X-Forwarded-Port $server_port;
        }
		location ~ .*\.(js|css|jpg|png)$ {
	             proxy_pass http://www.sszka.cn:8080;
	         }	
	    }
}

6.docker日志相关

//滚动查看最后20行,并现实时间戳。
docker-compose logs -f -t --tail=20

//找到对应的日志文件:
docker inspect --format='{{.LogPath}}' CONTAINER_ID

//进行清理:
cat /dev/null > xxx-json.log

//docker-compose 配置日志大小数量
    logging:
      driver: "json-file"
      options:
        max-size: "1m"
        max-file: "20"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值