创建项目需要的一些docker镜像
docker的镜像地址源问题(阿里云)
配置阿里云的加速,不然拉取镜像会超时或者重置连接
修改好之后,保存,重启加速器,重启docker。
systemctl daemon-reload
systemctl restart docker
Docker 安装Portainer(用来管理docker)
docker search portainer
docker pull portainer/portainer
本机模式启动:
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name prtainer portainer/portainer
远程模式启动:
docker run -d -p 9000:9000 --restart=always --name prtainer portainer/portainer
访问Portainer容器:http://IP:9000
远程模式需要开放2375端口,docker端口开放出来是没有密码的
Portainer 登录需要设置账号密码,使用本地模式就不需要开放2375端口(安全一点)
开启2375端口和本地模式
方法一
在/usr/lib/systemd/system/docker.service,配置远程访问。
主要是在[Service]这个部分,加上下面两个参数
vim /usr/lib/systemd/system/docker.service
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
重启
systemctl daemon-reload
systemctl restart docker
方法二
下面修改daemon.json的配置
vim /etc/docker/daemon.json
增加属性
{
“hosts”: [“tcp://0.0.0.0:2375”, “unix:///var/run/docker.sock”]
}
“unix:///var/run/docker.sock”:unix socket,本地客户端将通过这个来连接 Docker Daemon。
“tcp://0.0.0.0:2375”:tcp socket,表示允许任何远程客户端通过 2375 端口连接 Docker Daemon。
修改配置以后
然后让docker重新读取配置文件,并重启docker服务
systemctl daemon-reload
systemctl restart docker
Docker 安装nginx
docker pull nginx:latest
docker run --name nginx-test -p 8080:80 -d nginx
nginx挂载本地目录
docker run -d --name nginx -p 80:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx -v /data/nginx/conf.d:/etc/nginx/conf.d --restart=always nginx:latest
相关文件:
/data/nginx/conf/nginx.conf:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
/data/nginx/conf.d/default.conf:
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
# 将端口代理到指定ip上的端口
proxy_pass http://127.0.0.1:8900;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
/data/nginx/html/index.html
hello world
Docker 安装mysql
docker pull mysql:latest
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
Docker 安装redis
docker pull redis:latest
docker run -itd --name redis-test -p 6379:6379 redis
Docker 拉取java 8
docker search java
docker pull docker.io/java