MAC使用DOCKER常用命令

文章目录

  • 常用DOCKER功能
    • 1 安装docker
    • 2 拉取镜像(安装软件)
    • 3 删除镜像(卸载软件)
    • 4 停止/重启容器

常用DOCKER功能

1 安装docker

  1. 官网下载桌面版本
  2. homebrew安装(brew版本为4.2.3)
brew install docker

通过这种方式安装docker在应用里是看不到对应docker软件的,当使用docker命令时会出现下面的提示

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

我是在网上搜了一个帖子传送门,然后运行了一下就好用了,具体什么原理不太清楚,如果有大佬知道还请指点一二!!非常感谢!!
运行内容如下

launchctl list | grep docker

运行后显示如下内容,有点不对劲,但是能用!

0	com.docker.helper

然后就可以拉取镜像等操作了。

2 拉取镜像(安装软件)

可参考视频传送门

  1. 首先查看软件版本
docker search mysql

如果是M1芯片的建议选择arm64v8/v8/mysql

  1. 选好版本后进行下载
docker pull arm64v8/mysql
  1. 下载成功后查看下载好的软件
docker images
  1. 启动容器(mysql和redis)
docker run -d -i -t [容器ID] /bin/bash
  1. mysql配置文件
    创建两个数据卷
docker volume create mysql_conf;
docker volume create mysql_data;

将配置文件通过orbstack软件复制到mysql_conf文件中
MAC使用DOCKER常用命令_第1张图片
MAC使用DOCKER常用命令_第2张图片

文件内容如下

[mysqld]
character-set-server=utf8
max_connections=1000
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
  1. 配置完成后,启动mysql
docker run -p 3306:3306 \
 --name mysql \
 -v mysql_data:/var/lib/mysql \
 -v mysql_conf:/etc/mysql/conf.d \
 --privileged=true \
 -e MYSQL_ROOT_PASSWORD=123456 \
 -d arm64v8/mysql
  1. 安装并配置成功后进入软件
docker exec -it mysql /bin/bash
  1. 登陆mysql
mysql -uroot -p123456

redis

  1. 下载redis
docker pull arm64v8/redis

启动redis

docker run -p 6379:6379 \
--name redis \
-v redis_data:/data \
-v redis_conf:/etc/redis/redis.conf \
-d arm64v8/redis \
redis-server /etc/redis/redis.conf

3 删除镜像(卸载软件)

在要删除的镜像中有容器存在,要删除镜像,首先删除容器

  1. 停止容器
 docker ps // 查看所有正在运行容器
 docker stop containerId // containerId 是容器的ID

 docker ps -a // 查看所有容器
 docker ps -a -q // 查看所有容器ID

 docker start $(docker ps -a -q) // start启动所有停止的容器
 docker stop $(docker ps -a -q) // stop停止所有容器
 docker rm $(docker ps -a -q) // remove删除所有容器
  1. 删除容器和删除所有容器
# 删除一个
docker rm 容器ID

docker rm $(docker ps -aq)
  1. 删除镜像
其中,-f可以不加,加-f强制删除
docker rmi -f 镜像名/镜像ID

#删除多个 其镜像ID或镜像用用空格隔开即可 
docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID

#删除全部镜像  -a 意思为显示全部, -q 意思为只显示ID
docker rmi -f $(docker images -aq)

4 停止/重启容器

  1. 启动一个或多个已经被停止的容器
docker start [container id]
  1. 停止一个运行中的容器
docker stop [container id]
  1. 重启容器
docker restart [container id]

你可能感兴趣的:(macos,docker,容器)