docker用容器的模式,把各个应用在同一台宿主机上独立分开运营,保持了应用程序的独立性和安全性。同时具备快速部署的特点,迅速成为各大互联网公司宠儿。随之也成为每个开发人员必备的技能之一
关于docker的软件包名
ubuntu上apt里版本
添加docker-ce的安装源
sudo apt install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-commonsudo apt-key fingerprint 0EBFCD88
#如果下一下输出,说明添加成功
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"ubuntu安装最新的docker社区版
确认是否安装成功
下载官方镜像
sudo docker pull redis:6.0.3 #下载最新redis6查看镜像
启动镜像
sudo docker run -itd --name redis6 -p 6379:6379 redis:6.0.3
# -i 表示允许你对容器内的标准输入 (STDIN) 进行交互。
# -t 表示制定一个伪终端,一般接/bin/bash 方便exec进入容器后,输入执行命令
# -d 表示后台运行,
# --name 表示容器的名称,后面通过容器名称来,启动,停止,重启容器,名字需要唯一
# -p 表示端口映射,前一个数是宿主机的开端口,后一个数是容量里面的端口,可以不一样
# 最后是镜像名称和tag
# 更多帮助,docker run --help查看容器
停止/重启/启动 容器
进入容器里面
删除容器
docker-compose简介(以下简称dc)
可以通过apt install 来安装,但是版本太旧是 Version: 1.17.1-2
实用curl安装
sudo curl -L https://github.com/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose #赋予可执行文件简称是否安装成功
#版本号对象docker的版本,对应关系,请参考官网https://docs.docker.com/compose/compose-file/
version: '3.8'
services:
mongodb: #根据你自己的需要设定名字
#使用指定目录下的Dockerfile进行构建
build: .
#相当于docker run命令的-p参数,用于声明对外开放的端口
container_name: my_app #声明构建容器的名称,docker-compose start和stop命令可以使用
ports:
- "5000:5000"
- "8010:80"version: '3.8'
networks:
mynet:
external: true
services:
mongodb:
image: mongo:4.2.6
networks:
- mynet
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
- /data/mongo_cluster/2727/db:/data/db
- /data/mongo_cluster/2727/opt:/opt
container_name: mongo_main
environment:
- MONGO_INITDB_ROOT_USERNAME=qumogu
- MONGO_INITDB_ROOT_PASSWORD=Qumogu@1604
command: --auth --bind_ip 0.0.0.0
ports:
- 2727:27017
restart: always
logging:
driver: json-file
options:
max-file: '2'
max-size: 100m