Win10 系统使用 Docker
安装
菜鸟教程
nginx
下载最新的nginx
docker pull nginx
启动nginx
为了方便,把nginx配置文件、静态文件和日志映射到容器外面
d:\\
# 创建文件夹
md \docker-data\nginx\conf
md \docker-data\nginx\conf.d
md \docker-data\nginx\logs
md \docker-data\nginx\www
# 等价于
md \docker-data\nginx\conf \docker-data\nginx\conf.d \docker-data\nginx\logs \docker-data\nginx\www
在启动nginx前要先创建nginx配置文件,不然会把配置文件当成文件夹
可以先启动一个nginx,复制配置文件到服务器上
docker run --name nginx -p 8081:80 -d nginx
# 复制容器 id 为 aacfa7df8232 的 nginx 容器的配置文件到服务器指定路径下
docker cp aacfa7df8232:/etc/nginx/nginx.conf D:\docker-data\nginx\conf\
docker cp aacfa7df8232:/etc/nginx/conf.d/default.conf D:\docker-data\nginx\conf.d\
修改 D://docker-data/nginx/conf.d/default.conf
就可以了,因为D://docker-data/nginx/conf/
已经通过include
引入了default.conf
server {
listen 80;
listen [::]:80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location ^~ /api/ {
proxy_pass http://192.168.40.26:9090/;
}
location ~ \.zz$ {
proxy_pass http://192.168.40.26:9090;
}
#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;
}
}
启动nginx
注意:把命令合成一行,此处只是为了看起来更直观
docker run --name nginx -p 81:80 -d
-v D:\docker-data\nginx\www:/usr/share/nginx/html
-v D:\docker-data\nginx\conf/nginx.conf:/etc/nginx/nginx.conf
-v D:\docker-data\nginx\conf.d/default.conf:/etc/nginx/conf.d/default.conf
-v D:\docker-data\nginx\logs:/var/log/nginx
nginx
进入nginx容器内部
docker exec -it nginx /bin/bash
设置开机自启
docker update nginx --restart=always
redis
下载最新的redis
docker pull redis
启动redis
在启动redis前要先创建redis配置文件,不然会把配置文件当成文件夹
# 创建配置文件文件夹
d:\\
# 创建文件夹
md \docker-data\redis\data
md \docker-data\redis\conf
# 等价于
md \docker-data\redis\data \docker-data\redis\conf
默认没有开启持久化,数据在内存中,重启服务器后数据会丢失,在配置文件中设置持久化
vi D:\docker-data\redis\conf\redis.conf
# 持久化 AOF
appendonly yes
启动redis
注意:把命令合成一行,此处只是为了看起来更直观
docker run -p 6379:6379 --name redis
-v D:\docker-data\redis\data:/data
-v D:\docker-data\redis\conf\redis.conf:/etc/redis/redis.conf
-d redis redis-server /etc/redis/redis.conf
进入redis客户端
docker exec -it redis redis-cli
设置开机自启
docker update redis --restart=always
mysql
下载mysql5.7
docker pull mysql:5.7
mysql配置文件
创建mysql配置文件
d:\\
# 创建文件夹
md \docker-data\mysql\data
md \docker-data\mysql\conf
md \docker-data\mysql\log
# 等价于
md \docker-data\mysql\data \docker-data\mysql\conf \docker-data\mysql\log
新建配置文件
# 新建配置文件
vi D:\docker-data\mysql\conf\my.conf
配置文件内容如下
[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysqld]
init_connect=' SET collation_connection = utf8_unicode_ci'
init_connect=' SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
启动mysql
docker run -p 3306:3306 --name mysql
-v D:\docker-data\mysql\conf:/etc/mysql/
-v D:\docker-data\mysql\log:/var/log/mysql
-v D:\docker-data\mysql\data:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=root
-d mysql:5.7
进入容器内部
docker exec -it mysql /bin/bash
重启mysql
docker restart mysql
进入mysql容器内部,可以看到里面有在外面配置的配置文件my.conf
docker exec -it mysql /bin/bash
cat /etc/mysql/my.conf
设置开机自启
docker update mysql --restart=always
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!