Docker的安装

Docker离线安装

docker安装包中有四个文件

docker.service docker配置

docker-18.06.3-ce.tgz docker安装包

install.sh 安装命令

uninstall.sh 卸载命令

其中,docker配置文件需要修改关键字的内容,将ip地址改为当前机器的ip地址--insecure-registry=192.168.205.230

命令:

chmod +x install.sh  # 添加权限
chmod +x uninstall.sh # 添加权限
sh install.sh docker-18.06.3-ce.tgz # 执行安装命令,并将当前目录下的docker安装文件作为参数
systemctl status docker # 查看docker状态

Docker的常用命令

docker pull

docker pull mysql

从镜像仓库拉取最新的mysql镜像,并安装到本地

docker run

docker run -d --name mysql3006 -p 3006:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql --network network_name

使用 mysql 镜像创建一个名为 mysql3006 的容器,并且将容器里的 3306 端口映射到本地的 3006 端口

MYSQL_ROOT_PASSWORD设置数据库 root 用户的密码

--network参数用于设置当前容器运行的网络

开机自启

使用该命令可以在Linux开机的时候自动启动对应的容器

注意:要在镜像名称之前使用,即mysql之前

--restart unless-stopped 
docker run -d --name mysql3006 -p 3006:3306 -e MYSQL_ROOT_PASSWORD=123456 --restart unless-stopped mysql

docker images

查看docker镜像

docker network

docker网络映射,docker自带三个网络bridge、host、none,一般使用host即可

docker network create

创建docker网络映射

docker network inspect

查看docker网络配置信息

docker network ls

查看docker网络配置列表

docker rm

删除docker容器

docker ps

查看运行中的容器

docekr stop

停止运行中的容器

docker logs

查看Docker镜像的日志输出

-f可以持续输出日志

docker build

构建docker镜像

docker build -t my-python-app .

docker tag

为镜像打标签

Docker启动mysql

使用端口映射

docker run -d --name mysql3006 -p 3006:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

使用host网络

docker run -d --name mysql3006 -e MYSQL_ROOT_PASSWORD=123456 mysql --network host

Docker部署Redis

安装镜像

使用docker/docker-compose通过自定义的redis.conf文件启动redis 7.2.3,附上docker-compose.yml的redis配置_配置redis的docker-compose.yml-CSDN博客

常规

docker pull redis

Dockerfile

使用Dockerfile部署,使用本地的conf替代默认的conf

redis.conf获取,可以直接从官网获取,选择redis对应版本,Redis configuration | Docs

修改redis.conf

bind 0.0.0.0
daemonize no
protected-mode no
appendonly yes
requirepass redis密码

特别需要关注daemonize,必选为no
在Linux中一般都设置为yes,但是在docker中,必须设置为no

redisDockerfile

FROM redis:latest

# 将本地的 redis.conf 文件复制到容器内的 /usr/local/etc/redis/ 目录下
COPY redis.conf /usr/local/etc/redis/

CMD ["redis-server", "/usr/local/etc/redis/redis.conf"]

Dockerfile构建

docker build -t my-redis .

最后的.表示在当前目录下查找到Dockerfile,并且根据内容构建镜像

启动容器

使用端口映射

docker run -d --name redis -p 6379:6379 redis redis-server --requirepass "123456"

使用host网络

docker run -d --name redis redis redis-server --requirepass "123456" --network host

Docker启动Nginx

docker run -d --name nginx nginx