MySQL

docker run -p 13306:3306 --name MySQL_One --restart=always -v /root/Docker_woker/blog_mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=passwd  -d mysql:8.0.24

#-p 13306:3306 将容器的3306端口映射到主机的13306
#--name MySQL_One 容器昵称
#-v /root/Docker_woker/blog_mysql:/var/lib/mysql 数据持久化
#-e MYSQL_ROOT_PASSWORD=passwd 设置数据库密码
#-d 后台运行
#mysql:8.0.24 选择启动版本
#--restart=always 退出后自动启动

#进入容器命令行
docker exec -it some-mysql bash

#查看日志
docker logs some-mysql

#备份数据库
docker exec some-mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /some/path/on/your/host/all-databases.sql

#从文件还原数据
docker exec -i some-mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /some/path/on/your/host/all-databases.sql

portainer (Docker Web后台)

docker run -d -p 39000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer  portainer/portainer

#-d 后台运行
#--restart=always 退出后自动启动
#--name prtainer 容器昵称
#portainer/portainer 容器镜像

Python

#启动一个交互容器
docker run -p 8080:80 --name Blog -v /root/Docker_woker/DjangoBlog-master:/root -it python:3.8.10 /bin/bash
#-p 8080:80 映射容器的80端口到主机的8080
#--name Blog 容器昵称
#-v /root/Docker_woker/DjangoBlog-master:/root 将项目文件挂载到容器的/root
#-it 前台模式
#/bin/bash 启动bash命令行工具

#直接启动项目
docker run -it --rm --name mypython -v "$PWD":/usr/src/myapp -w /usr/src/myapp python:3.8.10 python app.py
#-w 切换初始路径

phpmyadmin(MySQL Web管理工具)

#链接容器启动
docker run --name myadmin -d --restart=always --link <容器名称>:db -p 8080:80 phpmyadmin
#-p 8080:80 映射容器的80端口到主机的8080端口
#-d 后台运行
#--link 链接容器
#--restart=always 容器自动启动

#链接MySQL服务器启动
docker run --name myadmin -d --restart=always -e PMA_HOST=172.17.0.3 -p 8080:80 phpmyadmin
#-p 8080:80 映射容器的80端口到主机的8080端口
#-d 后台运行
#--link 链接容器
#--restart=always 容器自动启动

#链接任意服务器
docker run --name myadmin --restart=always -d -e PMA_ARBITRARY=1 -p 8080:80 phpmyadmin

内网穿透服务

#服务端
docker run -d \
           --name lanproxy-server \
           -p 4980:8090 \
           -p 4900:4900 \
           -p 4999:4993 \
           -p 4901-4979:4901-4979 \
           --restart=always \
           -e LANPROXY_USERNAME="mek" \
           -e LANPROXY_PASSWORD="030399" \
           franklin5/lanproxy-server
		   #4980 http管理端口
		   #4900 服务端口
		   #4999 ssl端口
		   #4901-4979		业务端口
		   
#客户端
docker run -d \
           --name lanproxy-client \
           -e LANPROXY_KEY="input_your_key" \
           -e LANPROXY_HOST="input_your_host" \
           --restart=always \
           franklin5/lanproxy-client

Redis


#数据持久化的redis
docker run --name redis --restart=always -p 6379:6379 -d redis redis-server --save 60 1 --loglevel warning

#带数据卷的redis
docker run --name redis --restart=always -p 6379:6379 -v redis:/data -d redis redis-server --save 60 1 --loglevel warning

netdata性能监控工具

docker run -d --name=netdata \
  -p 19999:19999 \
  --restart=always \
  -v /proc:/host/proc:ro \
  -v /sys:/host/sys:ro \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  --cap-add SYS_PTRACE \
  --security-opt apparmor=unconfined \
  netdata/netdata

导图软件

docker run -d --name draw -p 8280:8080 jgraph/drawio

SMB文件服务器

docker run -p 139:139 -p 445:445 -m 256m -v /root/storage:/mount -d dperson/samba -p \
            -u "mek;030399" \
            -s "storage;/mount;yes;no;yes;"
            
            # -u 	设置用户名和密码
            -u "<username;password>[;ID;group;GID]"       Add a user
                required arg: "<username>;<passwd>"
                <username> for user
                <password> for user
                [ID] for user
                [group] for user
                [GID] for group
                
            # -s	显示路径;实际路径 权限配置 
            -s "<name;/path>[;browse;readonly;guest;users;admins;writelist;comment]"
                Configure a share
                required arg: "<name>;</path>"
                <name> is how it's called for clients
                <path> path to share
                NOTE: for the default values, just leave blank
                [browsable] default:'yes' or 'no'
                [readonly] default:'yes' or 'no'
                [guest] allowed default:'yes' or 'no'
                NOTE: for user lists below, usernames are separated by ','
                [users] allowed default:'all' or list of allowed users
                [admins] allowed default:'none' or list of admin users
                [writelist] list of users that can write to a RO share
                [comment] description of share

数据词典

docker pull 251878350/database-dictionary:v4.4
docker run -itd -p 9998:9998 --name=database-dictionary 251878350/database-dictionary:v4.4

系统镜像

docker run -v .:/data -it centos:7.6.1810 /bin/bash