istoreos 的 1Panel docker镜像名称
linkease/istorepanel:latest
1Panel Log]: 请用浏览器访问面板:
[1Panel Log]: 面板地址: http://192.168.111.111:62595/entrance
1pctl user-info
docker的安装
#安装centos最新版
docker pull centos:latest
使用Docker卷
Docker卷是用于持久化数据的最佳方式,它允许您在容器之间共享数据,并且即使容器生命周期结束,数据依然存在。
# 创建一个名为baota的Docker卷
docker volume create baota
# 启动容器并挂载卷
docker run -tid -p 62590:62590 -p 888:888 -p 30:20 -p 31:21 -p 32:22 -p 543:443 -p 3306:3306 -p 39682:39682 -p 880:80 -p 82:82 -p 83:83 -p 84:84 -p 85:85 -p 86:86 -p 87:87 -p 88:88 -p 89:89 --privileged=true --shm-size=1g --restart always -v baota:/www -v /mnt/sata1-1/baota/www/wwwroot:/www/wwwroot --name=baota centos:latest
#/www文件夹保存在volume卷中,
#/www/wwwroot映射到宿主机的目录下,方便上传网站代码等文件,修改第二个-v参数。
进入容器
docker exec -it baota /bin/bash
(或者#获取容器id)z
docker ps | grep baota
#进入容器
docker exec -it <容器ID> bash
#验证centos容器实例是否成功运行
在容器内部,你可以通过运行以下命令来验证linux的版本:
cat /etc/os-release
对于 CentOS 7 和更早版本,可以使用 yum 命令来更新系统。对于 CentOS 8 和更高版本,推荐使用 dnf 命令,因为它提供了更多的功能和更好的性能。
#更新所有包:
sudo yum update (centos7) sudo dnf upgrade (centos8和9)
#升级所有包,包括内核:
sudo yum upgrade (centos7) sudo dnf update (centos8和9)
如果更新失败需要更换源地址
CentOS8 更改国内YUM源
原生镜像安装的 CentOS-8默认使用官方的 yum 源,国内不可使用;修改为阿里维护的yum源:
下载阿里云的 yum 源文件并替换本地 yum 源文件:
#sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
#这里也可以用 wget,推荐使用 curl 是因为有些最小化安装的 centos 默认不带 wget,上下两条命令选择一条即可
# sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
清除之前的 yum 缓存以及新生成缓存
yum clean all && yum makecache
清理缓存
更新完成后,清理 yum 或 dnf 的缓存可以释放磁盘空间。
sudo yum clean all #对于 CentOS 7 sudo dnf clean all #对于 CentOS 8 及以后版本
检查可用的更新(不立即安装)
如果你只想检查可用的更新而不立即安装它们,可以使用以下命令:
yum check-update #对于 CentOS 7 dnf check-update #对于 CentOS 8 及以后版本
没有安装wget,则安装wget,执行
yum install wget 或者 dnf install wget #安装wget
系统找不到which命令,执行
apt install -y which 或者 dnf install -y which #安装which
安装unzip支持
apt install unzip 或者 dnf install unzip #安装unzip
检测到缺少系统ssl相关依赖,可执行下面命令安装依赖后再重新安装宝塔看是否正常执行前请确保系统源正常安装依赖命令:
yum install openssl-devel -y
宝塔提示ERROR: Make python env fielded的解决方法:安装make组件,再尝试安装面板,centos安装make组件的命令:
yum -y install gcc automake autoconf libtool make 或者 dnf -y install gcc automake autoconf libtool make
宝塔安装
在容器中执行安装宝塔命令最新版本:
url=https://download.bt.cn/install/install_panel.sh;if [ -f /usr/bin/curl ];then curl -sSO $url;else wget -O install_panel.sh $url;fi;bash install_panel.sh ed8484bec
安装完成后,账号密码都是随机生成的,执行
bt default
查看默认账号和密码
容器外部访问方式:
外网面板地址: http://192.168.111.111:62590/3a0640be
username: 4akdgqn4
password: 6a6e0569
注意:我这是9888是因为我上面run的时候做了端口映射把8888的端口映射到9888上
宝塔命令
停止
/etc/init.d/bt stop
启动
/etc/init.d/bt start
重启
/etc/init.d/bt restart
修改端口和访问地址,账号密码
进入宝塔面板,选择面板设置,点击全部设置,往下可以看到对应修改端口,访问地址,账号密码的地方
如果因为随机生成的端口没有映射导致无法访问,可以尝试命令方式修改端口:
命令 bt
配置项目
配置前端项目
1.在阿里云服务器添加域名
2.在宝塔中点击网站,如果没安装ng,打开如果提示安装则安装完后就可以使用。
3.在PHP项目中添加站点,把阿里云配置的域名配置进去,然后把前端项目路径配置好(前端项目是通过项目中的drone.yaml配置信息,自动同步到宝塔映射的地址上)
配置后端项目
根据云端服务配置的域名,在宝塔中添加对应域名即可点击保存
然后再次点击这域名后面的设置按钮,点击配置文件
添加内容
upstream 《域名》 {
server 《后端访问地址》 weight=1;
}
server中添加
location / {
proxy_pass 《域名》;
client_max_body_size 30m;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
expires 0d;
error_log /dev/null;
access_log /dev/null;
}
点击保存即可
————————————————
代码示例:
Docker 是一个开源的应用容器引擎,它允许开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
在 Docker 中,端口映射是将容器内部的端口映射到宿主机的端口上,使得外部可以通过宿主机的端口访问容器内部的服务。以下是为 Docker 容器添加新端口映射的两种方法及常用命令的详细例子:
方法一:使用 docker run 命令时指定端口映射
当你启动一个容器时,可以直接在 docker run 命令中使用 -p 或 --publish 参数来指定端口映射。
命令格式:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
1
选项说明:
-p 或 --publish:格式为 <宿主机端口>:<容器端口> 或 <宿主机端口>(此时 Docker 会自动分配容器端口)。
-P 或 --publish-all:将容器内部所有暴露的端口都映射到宿主机的高端口上。
例子:
# 将容器的 80 端口映射到宿主机的 8080 端口
docker run -p 8080:80 nginx
# 将容器的 22 端口(SSH)映射到宿主机的 2202 端口
docker run -p 2202:22 ubuntu
# 将容器的所有端口都映射到宿主机的高端口上
docker run -P nginx
方法二:使用 docker network 命令修改网络设置
如果你已经启动了容器,想要添加新的端口映射,可以使用 docker network connect 命令来重新连接网络,并指定新的端口映射。
命令格式:
docker network connect [OPTIONS] NETWORK CONTAINER
1
选项说明:
--publish:格式为 <宿主机端口>:<容器端口>。
例子:
假设你已经有一个名为 my_container 的容器和一个名为 my_network 的网络,现在想要将容器的 80 端口映射到宿主机的 8081 端口上。
首先,断开容器与网络的连接(可选,但推荐):
docker network disconnect my_network my_container
1
重新连接网络,并添加新的端口映射:
docker network connect --publish 8081:80 my_network my_container
1
这样,你就成功地为已存在的容器添加了新的端口映射。
常用命令
docker ps:列出当前运行的容器。
docker inspect <容器ID或名称>:查看容器的详细信息,包括端口映射。
docker port <容器ID或名称>:查看容器的端口映射详情。
请注意,使用 Docker 时,确保你有足够的权限来执行这些命令,或者使用 sudo 来获取必要的权限。此外,确保 Docker 服务正在运行。
————————————————
原文链接:https://blog.csdn.net/jimn2000/article/details/142867448
发表评论