惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

M
MIT News - Artificial intelligence
雷峰网
雷峰网
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Last Week in AI
Last Week in AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
阮一峰的网络日志
阮一峰的网络日志
月光博客
月光博客
博客园 - Franky
腾讯CDC
T
Tailwind CSS Blog
Recent Announcements
Recent Announcements
V
V2EX
N
Netflix TechBlog - Medium
量子位
Jina AI
Jina AI
Y
Y Combinator Blog
The GitHub Blog
The GitHub Blog
G
Google Developers Blog
爱范儿
爱范儿
博客园 - 叶小钗
D
Docker
MongoDB | Blog
MongoDB | Blog
D
DataBreaches.Net
T
The Blog of Author Tim Ferriss

碎言

不懂就别瞎掰掰:【程序员的常识】写的什么玩意? PrimaryOralMathPack 小学生口算题生成器 AI 辅助编程下的程序设计与代码编写 使用 Next.js 和 Tailwind CSS 构建可编辑和删除的 ToDo 待办事项应用 探索编程新境界:MarsCode 助你一臂之力 使用 Next.js 和 Tailwind CSS 搭建静态图片展示站点并部署到 Vercel AI 辅助编程:免费工具的优缺点及官网一览 GitHub push更新总是失败,写个python脚本解决 把博客从GitHub迁移到到了vercel ComfyUI 和 Flux.1 安装与使用教程 Flux.1 入门必知:硬件、环境、模型 Git项目的子文件夹中的内容无法同步到远程仓库的解决方法 blender流体Fluid使用中没有流体、流体穿模等一些问题的解决方法 博客聚合网站:积薪,竟然关闭了! blender日常使用中的一些技巧 虽然只有我自己在用,但还是更新了碎言博客的源代码, 与其在迷茫中困惑,不如在努力中前进 差点忘了我还有一个博客... 秧歌、博客和AI 终于熬到了新手上路 好久没有更新博客了。。。 老妈大腿骨骨折,最近一直在医院护理 Hello, September! Ubuntu开机自动启动Docker容器运行WordPress Docker 简单快速安装部署WordPress Docker下安装MySQL 加碘盐能防核辐射的话,还怕什么核战争? shields.io 一个简洁、一致、清晰的徽章 Ubuntu下使用root登录ssh的设置 GitHub Actions 构建、部署 Next.js项目
Docker基础学习笔记和常用命令汇总
J.sky · 2023-07-31 · via 碎言

这是一篇Docker的学习笔记,记录了Docker一些日常操作。

Docker 安装

Ubuntu 22 安装Docker过程记录

Docker常用命令

docker version        # 显示docker的版本信息
docker info              # 显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help         # 帮助命令

docker search  # 搜索镜像
docker pull #下载镜像
docker rmi image #删除镜像

docker ps # 列出正在运行的容器
docker ps -a #如果你想查看所有包括已经停止的容器,可以使用 -a 参数
docker inspect <container_id_or_name> #查看容器的详细信息

删除容器:

删除单个已停止的容器:
bash
Copy code
docker rm <container_name_or_id>
如果你想在删除容器时同时删除关联的卷(volumes),可以添加 -v 参数:

bash
Copy code
docker rm -v <container_name_or_id>
批量删除多个容器(注意:这将删除所有指定的容器,无论它们是否在运行状态):

bash
Copy code
docker rm <container_name_or_id> <container_name_or_id> ...
删除所有已停止的容器(慎用,这将删除所有处于停止状态的容器):

bash
Copy code
docker container prune

docker run image #启动容器
docker run -d image #后台启动容器

1. 交互式模式运行 Ubuntu 容器: 
docker run -it --name my_ubuntu ubuntu:latest

2.  后台运行一个 Web 应用容器,将容器内部的 80 端口映射到主机的 8080 端口: 
docker run -d -p 8080:80 --name web_app nginx:latest

3.  将主机上的目录挂载到容器内部,以便实现数据持久化: 
docker run -v /host/path:/container/path -d --name data_container ubuntu:latest

4.  设置环境变量并运行容器: 
docker run -e ENV_VAR=value --name env_container ubuntu:latest

5.  指定容器的重启策略为始终重启: 
docker run --restart always --name restart_container ubuntu:latest

docker exec -it 容器id /bin/bash #进入当前容器
docker start 容器id        # 启动容器
docker restart 容器id    # 重启容器
docker stop 容器id        # 停止当前正在运行的容器
docker kill 容器id        # 强制停止当前容器


docker logs -tf --tail 容器id # 查看日志
docker inspect 容器id #查看容器内容

docker run [可选参数] image
# 参数说明
--name="name"        容器名字:用来区分容器
-d                    后台方式运行:相当于nohup
-it                    使用交互式运行:进入容器查看内容
-p                    指定容器的端口(四种方式)小写字母p
    -p ip:主机端口:容器端口
    -p 主机端口:容器端口
    -p 容器端口
    容器端口
-P                     随机指定端口(大写字母P)

安装mysql

# docker 中下载 mysql
docker pull mysql

#启动
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Lzslov123! -d mysql

#进入容器
docker exec -it mysql bash

#登录mysql
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'suiyan';

#添加远程登录用户
CREATE USER 'suiyan'@'%' IDENTIFIED WITH mysql_native_password BY 'suiyan.cc';
GRANT ALL PRIVILEGES ON *.* TO 'liaozesong'@'%';

安装Ubuntu

sudo docker pull ubuntu

sudo docker images

sudo docker run -itd --name tu ubuntu:latest

sudo docker exec -it 52b9 /bin/bash # 进入容器Ubuntu

exit #推出

sudo docker stop 容器ID #停止Ubuntu容器

总体来说,docker的安装和使用还是很简单的,上手操作一下,半小时就能入手了。