Compare commits

...

2 Commits

Author SHA1 Message Date
cnb.bApmeMoSgJA dacc3d5146 cnb 自定义开发容器 2025-12-02 15:02:29 +08:00
cnb.bApmeMoSgJA 2ab2bba546 🔧 添加vscode开发支持 2025-11-25 17:29:47 +08:00
4 changed files with 71 additions and 0 deletions

1
.gitignore vendored
View File

@ -29,3 +29,4 @@ pnpm-workspace.yaml
/nuxt.run.xml /nuxt.run.xml
/server_ nuxt.run.xml /server_ nuxt.run.xml
/output.tar.gz /output.tar.gz
.pnpm-store

33
.ide/Dockerfile Normal file
View File

@ -0,0 +1,33 @@
FROM cnbcool/default-build-env:latest
RUN apt-get update && \
apt-get install -y wget unzip lsof nload htop net-tools dnsutils openssh-server zsh openssh-server command-not-found && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
WORKDIR /root
RUN git clone https://git.lichx.top/li_chx/shell-config.git && \
cp -r shell-config/.* . && \
wget https://download.jetbrains.com/webstorm/WebStorm-2025.2.5.tar.gz && \
mkdir -p /ide_cnb && \
tar -zxvf WebStorm-2025.2.5.tar.gz -C /ide_cnb && \
rm WebStorm-2025.2.5.tar.gz && \
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash && \
source ~/.bashrc && \
nvm install 24 && \
npm install --global corepack@latest && \
corepack enable pnpm && \
apt update
# 单独处理 zsh 配置
RUN zsh -c "source ~/.zshrc" && \
echo "zsh" >> ~/.bashrc
RUN curl -fsSL https://code-server.dev/install.sh | sh \
&& code-server --install-extension nuxtr.nuxt-vscode-extentions \
&& code-server --install-extension bradlc.vscode-tailwindcss \
&& code-server --install-extension tencent-cloud.coding-copilot \
&& code-server --install-extension ms-vscode.vs-keybindings
ENV LANG C.UTF-8
ENV LANGUAGE C.UTF-8

11
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,11 @@
{
"recommendations": [
"vue.volar",
"vue.vscode-typescript-vue-plugin",
"bradlc.vscode-tailwindcss",
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"ms-vscode.vscode-typescript-next",
"nuxtr.nuxt-vscode-extentions"
]
}

26
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,26 @@
{
"typescript.preferences.includePackageJsonAutoImports": "on",
"typescript.suggest.autoImports": true,
"typescript.updateImportsOnFileMove.enabled": "always",
"vue.codeActions.enabled": true,
"vue.complete.casing.tags": "kebab",
"vue.complete.casing.props": "camel",
"vetur.validation.template": false,
"vetur.validation.script": false,
"vetur.validation.style": false,
"emmet.includeLanguages": {
"vue": "html"
},
"files.associations": {
"*.vue": "vue"
},
"editor.quickSuggestions": {
"strings": true
},
"editor.tabSize": 2,
"editor.insertSpaces": true,
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
}